zoukankan      html  css  js  c++  java
  • C

    C - Glenbow Museum

    UVALive - 4123

    题意:

    对于一个边平行于坐标轴的多边形,我们可以用一个由R或者O组成的序列来描述他,从一个顶点开始按照逆时针顺序走,碰到一个90°的内角记作R;碰到一个270°的内角记作O。这样的序列称为角度序列。

    给定正整数L,有多少个长度为L的角度序列至少可以对应一个星形多边形(即多边形中存在一个点,可以看到多边形边界上的每一个点)?多边形的每条边长度任意。注意一个多边形有多条角度序列与之对应,RRORRR与ORRRRR是不同序列,但可以描述同一个多边形。

    输入描述:

    输入包含多组数据,每组数据仅占一行,即角度序列的长度L(1<=L<=1000)输入结束标志(L=0)

    输出描述:

    对于每组数据,输出满足条件的角度序列的个数。

    分析:

    ​ 长度为L的多边形的内角和是一定的,且270°的内角与90°的内角的个数是恒定为L。所以设90°的个数为x个,270°的个数为y个。

    x+y=Lx+y=L

    90x+270x=(L2)18090*x+270*x=(L-2)*180

    解得

    x=(l+4)/2x=(l+4)/2

    y=(l4)/2y=(l-4)/2

    故可知 90°的序列比270°的多4个,且L必须为偶数,且L >=4

    还有那些限制条件呢?

    题目描述的形状由上 下 左 右 四条边,即由4个RR的连续的串, 且OO不能连在一起,最左边是O,最右边是O也不行

    那么可以用插空法

    1.最左(右)边是O的方法数目 C(x-1,y-1)

    2.左右两边有没有O的方法数目 C(x-1,y )

    故答案 ans=C(x1,y1)2+C(x1,y)ans=C(x-1,y-1)*2+C(x-1,y)

    #include<cstdio>
    #include<algorithm>
    #include<stack>
    #include<queue>
    #include<cstring>
    #include<string>
    #include<iostream>
    #include<iomanip>
    #define mset(a,b)   memset(a,b,sizeof(a))
    using namespace std;
    typedef unsigned long long ull;
    typedef long long ll;
    const int maxn=10000;
    const int branch=26;
    const int inf=0x3f3f3f3f;
    const int MOD=1e6+7;
    ull l;
    int main()
    {
        ull ans;
        int kcas=0;
        while(cin>>l,l)
        {
            if(l<=3||l&1)
            {
                ans=0;
            }
            else
            {
                ull x=(l+4)/2;
                ans=(x*(x-1)*(x-2)*(x-3))/24+((x-1)*(x-2)*(x-3)*(x-4))/24;
            }
            printf("Case %d: ",++kcas);
            cout<<ans<<endl;
    
        }
        return 0;
    }
    
  • 相关阅读:
    XLS导出的服务器端配置方式
    SQLSERVER2008 内存占用高的处理方式
    word定义多级列表
    SQL Server替换特殊字符
    php和mysql两种不同方式的分割字符串和类型转换
    tp杂记
    MySql数据库 主从复制/共享 报错
    the server ssl certificate failed to verify
    loaded some nib but the view outlet was not set(转载)
    xcode7 调用相册权限无提示
  • 原文地址:https://www.cnblogs.com/dchnzlh/p/10427279.html
Copyright © 2011-2022 走看看