• 洛谷 P1881 绳子对折


    题目描述

    FJ 有一个长度为L(1<= L <= 10,000)的绳子。 这个绳子上有N(1 <= N <= 100)个结,包括两个端点。 FJ想将绳子对折,并使较短一边的绳子上的结与较长一边绳子上的结完全重合,如图所示:

    找出FJ有多少种可行的折叠方案。

    输入输出格式

    输入格式:

     

    第一行: 两个整数, N和L

    第2至N+1行: 每一行包含一个整数表示一个结所在的位置,总有两个数为0和L

     

    输出格式:

     

    第一行: 一个整数表示FJ可折叠的方案数。

     

    输入输出样例

    输入样例#1: 复制
    5 10
    0 
    10 
    6 
    2 
    4
    
    输出样例#1: 复制
    4

    说明

    (可在1,2,3,8点处折叠)

    思路:枚举

    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    int n,l,ans;
    int num[101];
    int main(){
        scanf("%d%d",&n,&l);
        for(int i=1;i<=n;i++)    scanf("%d",&num[i]);
        sort(num+1,num+1+n);
        for(int i=2;i<=n;i++){
            int l=1,r=i;
            while(l<=r&&num[l+1]-num[l]==num[r]-num[r-1])    l++,r--;
            if(l>=r)    ans++; 
        }
        for(int i=2;i<n;i++){
            int l=i,r=n;
            while(l<=r&&num[l+1]-num[l]==num[r]-num[r-1])    l++,r--;
            if(l>=r)    ans++; 
        }
        cout<<ans;
    }
    细雨斜风作晓寒。淡烟疏柳媚晴滩。入淮清洛渐漫漫。 雪沫乳花浮午盏,蓼茸蒿笋试春盘。人间有味是清欢。
  • 相关阅读:
    一探前端开发中的JS调试技巧(转)
    JavaScript模板引擎实例应用(转)
    本周汇总
    完美解决IE8不支持margin auto问题
    移动端H5适配流程
    原型继承
    每周笔记
    一个页面多个bootstrip轮播以及一个页面多个swiper轮播 冲突问题
    如何让整个网页倾斜
    前端知识体系
  • 原文地址:https://www.cnblogs.com/cangT-Tlan/p/7899882.html
Copyright © 2020-2023  润新知