HUD 1729 Stone Game(SG)

来源:互联网 发布:要不要回老家 知乎 编辑:程序博客网 时间:2024/05/29 11:12

hdu 1729
思路:
c+c2<s && (c+1)+(c+1)2>=s时,SG[c]=0;

#include <iostream>#include <algorithm>#include <cstdio>#include <cmath>#include <cstring>#include <cstdlib>using namespace std;int sg(int s, int c){    int q = (int)(sqrt(s * 1.0));    while (q * q + q >= s)    {        q--;    }    if (c > q)    {        return s - c;    }    else    {        return sg(q, c);    }}int main(){    int n;    int cas = 0;    while (~scanf("%d", &n) && n)    {        printf("Case %d:\n", ++cas);        int ans = 0;        while (n--)        {            int s, c;            scanf("%d%d", &s, &c);            ans = ans ^ sg(s, c);        }        if (ans)        {            printf("Yes\n");        }        else        {            printf("No\n");        }    }}
0 0
原创粉丝点击