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;

} 

posted @ 2015-04-01 15:36  无忧望月  阅读(167)  评论(0编辑  收藏  举报
levels of contents