poj1323

题目大意:
预测游戏
假如有MR人,包括你自己,玩一个特殊的卡片游戏,开始的时候,没有参与者接收到N张卡片,这pip卡片是一个正整数最少M*N,没有两张pip卡片是一样的,在一圈后,每个玩家选择一张卡片与别人比较,这一圈所有玩家谁的卡片值最大的是获胜者,然后下一轮重复开始,当所有的卡片都被玩家选光的时候,谁赢得最多谁就获得比赛的最终胜利。这个题目就是计算自己至少会获得几次胜利
不知道是不是贪心的策略,不过确实很容易(数据真的很弱)
////////////////////////////////////////////////////////////////////////////////////////////////////////////
#include<stdio.h>

#define maxn 1005

int main()
{
     int n, m, t= 1;

     while(scanf( " %d%d ", &n, &m), m+n)
    {
         int i, x, a[maxn]={ 0}, sum= 0, k= 0;

         for(i= 0; i<m; i++)
        {
            scanf( " %d ", &x);
            a[x]= 1;
        }

         for(i=m*n; i>= 1; i--)
        {
             if(a[i] && k== 0)
                sum++;
             else  if(a[i])
                k--;
             else k++;
        }

        printf( " Case %d: %d\n ", t++, sum);
    }

     return  0;

} 

你可能感兴趣的:(poj)