zoukankan      html  css  js  c++  java
  • 洛谷 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;
    }
    细雨斜风作晓寒。淡烟疏柳媚晴滩。入淮清洛渐漫漫。 雪沫乳花浮午盏,蓼茸蒿笋试春盘。人间有味是清欢。
  • 相关阅读:
    Python报错:TypeError: data type not understood
    外星人入侵-01
    python界面编程
    python 之魔法方法
    软工第二次结对作业
    软工结对第一次作业
    软件工程第三次作业
    软件工程第二次作业
    我的第一篇博客
    python字符串的基本操作
  • 原文地址:https://www.cnblogs.com/cangT-Tlan/p/7899882.html
Copyright © 2011-2022 走看看