zoukankan      html  css  js  c++  java
  • UVALive 2521 Game Prediction 题解

      这个我上来把题目理解错了,我以为所有人的牌都是一样的,感觉这个题太麻烦了吧,而且题目样例过不去啊……后来发现理解错了,给出的数据是他一个人的数据,就是让我们求他一定能赢的轮数,所有的牌是固定的(1 - n×m),然后就去找当前最大值就可以了,不断的更新被打出的牌,就可以求出答案了。

    代码如下:

    #include<stdio.h>
    #include<string.h>
    #include<algorithm>
    using namespace std;
    
    int data[50];
    
    bool cmp(int a,int b)
    {
        return a>b;
    }
    
    int main()
    {
        int n,m,cas=0;
        while(~scanf("%d%d",&m,&n),m)
        {
            for (int i=1;i<=n;i++)
            {
                scanf("%d",&data[i]);
            }
            sort(data+1,data+1+n,cmp);
            int ll=0,cnt=0;
            for (int maxn=m*n,i=1;i<=n,maxn>=1;maxn--)
            {
                if (maxn==data[i])
                {
                    i++;
                    if (ll==0)
                    {
                        cnt++;
                    }
                    else
                    {
                        ll--;
                    }
                }
                else
                    ll++;
            }
            printf("Case %d: %d
    ",++cas,cnt);
        }
        return 0;
    }
  • 相关阅读:
    java 通过Iterator输出Map
    java SortedSet接口swap方法
    java vector
    java Iterator双向迭代输出
    java 序列化和反序列化多个对象
    培训
    每天晚上

    又想起了

  • 原文地址:https://www.cnblogs.com/jifahu/p/5723212.html
Copyright © 2011-2022 走看看