Rich Game HDU - 6245 解题报告

这是一道,额。。。很水的贪心题,分情况讨论一下即可,然后这道题,再稍微注意读题就好,我先补一下小学语文再来打ACM。

题目链接:https://vjudge.net/problem/HDU-6245

题意就是两个人玩游戏,我赢一分我给你X,我输一分给你Y,问你最多能赢几场,一定注意X,Y的含义!!!(唉 ,惨的一批)
这里有一个稍微特殊一点的规则就是平局的时候就是必须领先两分,所以局数可以无限增加,所以当X>Y的时候,必定是每一句都可以赢的,(可能这里会有人想不到)

下面给出AC代码

#include <bits/stdc++.h>
#define maxn 1000100
using namespace std;
typedef long long int ll;


int main()
{
    int T,cases=0; scanf("%d",&T);
    while(T--)
    {
        int x,y,k; scanf("%d %d %d",&x,&y,&k);

        if(x>y)
        {
            printf("Case #%d: %d\n",++cases,k);
            continue;
        }
        int res=0,div=11*y-9*x,sumx=0;


        while(k--)
        {
            if(sumx-div<0) sumx+=11*x;
            else
            {
                sumx-=div;
                res++;
            }
        }

         printf("Case #%d: %d\n",++cases,res);
    }
    return 0;
}

各位大哥一定要注意读题啊!!!!

猜你喜欢

转载自blog.csdn.net/NCC__dapeng/article/details/82457129