zoukankan      html  css  js  c++  java
  • 花生米五.cpp

    <span style="color:#6600cc;"></span>
    <span style="color:#6600cc;">/*1086.花生米(五)
    时限:1000ms 内存限制:10000K  总时限:3000ms
    描述
    五一长假第六天,Tom在QQ上遇到了Kitty。呵呵,Kitty,在离散数学课上认识的PPMM……等等!Tom恍然大悟:自己这一生除了看帖不回之外最大的错误就是离散数学没学好!
    /*五一长假第七天,Tom和Jerry在仓库散步的时候发现了一堆花生米(仓库,呵呵,仓库…)。这次Tom制定分花生米规则如下:
    ???????1、首先选出最苦的一粒花生米,放到一个瓶子里;
    ???????2、把剩下的花生米做成花生酱,Tom和Jerry轮流取一些花生酱吃掉;
    ???????3、第一个取的人只能取1.0克,以后取花生酱的数量不能少于两个人已经取过的总数量且不能超过两个人已经取过的总数量的三倍;
    ?????? 4、不能按规则3取花生酱的人必须吃掉瓶子里的花生米;
    ?????? 5、为显示规则的公平性,Jerry可以选择先取或者后取。
    Jerry当然希望瓶子里的花生米被Tom吃掉。请计算,Jerry为了达到目的应该先取还是后取。
    
    输入
    本题有多个测例,每个测例的输入是一个浮点数w,w大于1.0小于等于1000.0,w最多只有一位小数,代表花生酱的数量,单位为克。
    w小于0表示输入结束,不需要处理。
    
    输出
    每个测例在单独的一行内输出一个整数:Jerry先取输出1;Tom先取输出0。
    
    
    输入样例
    1.5
    7.9
    -1
    
    
    输出样例
    1
    0*/
    #include<stdio.h>
    #include<iostream>
    int a[10002][10002],sum=1,flag=0,n;
    using namespace std;
    void Search()
    {
        int i,j,k;
        for(i=1;i<=100;i++)
               a[i][i]=1;
         for(i=1;i<=100;i++){
             flag=0;
             sum=1;
            for(j=1;j<i;j++)
            {
               sum=sum+j;
               for(k=sum;k<=3*sum;k++)
               {
                   if(k>0&&k<=i-sum)
                     {
                         if(a[i-sum][k]==1)
                           flag=1;
                     }
               }
               if(flag==1)
                    a[i][j]=1;
                else
                    a[i][j]=0;
    
            }}
           /* for(i=1;i<=100;i++)
               for(j=1;j<=100;j++)
                 {cout<<a[i][j]<<" ";
                 if(j==10)
                    cout<<endl;}*/
                    cout<<a[15][1]<<endl;
                    cout<<a[79][1]<<endl;
    }
    
    int main()
    {
        double m;
        while(scanf("%lf",&m)>=0){
            n=(int)m*10;
            Search();
            cout<<a[n][1]<<endl;
         }
         return 0;
    }
    
    
    </span>


  • 相关阅读:
    Android Studio常用插件续
    Android Studio常用小技巧
    Repeater, DataList, 和GridView的区别及使用
    ListView在编辑状态下不能获取修改后的值,无法更新数据
    ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(二)
    ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示(一)
    使用Sql分页方法给Repeater控件分页的方法
    使用生活实例理解Asp.net运行时
    .net4.0注册到IIS ,重新注册IIS ,iis注册
    关于.NET编译的目标平台(AnyCPU,x86,x64)
  • 原文地址:https://www.cnblogs.com/codeyuan/p/4254554.html
Copyright © 2011-2022 走看看