HDU 2147 kiki's game

HDU_2147

    这个题目写得太悲剧了,本来我想找个简单点的题目实践一下刚接触的sg函数的,结果一开始没注意到空间的限制,开了二维的sg数组记忆化搜索结果就爆了空间了。

    然后不得不换成了递推的模式继续写,而且还要用滚动数组优化内存,但写完交上去TLE了。

    那没辙了,找规律吧,然后画了一下5*5的情况就找到规律了,然后直接O(1)求解过掉了。

    囧,写到最后几乎跟sg一点关系都没了……继续找别的题目练习sg函数……

#include<stdio.h>
#include<string.h>
int N, M;
void solve()
{
int ok;
if(N & 1)
ok = (M & 1) ^ 1;
else
ok = 1;
if(ok)
printf("Wonderful!\n");
else
printf("What a pity!\n");
}
int main()
{
for(;;)
{
scanf("%d%d", &N, &M);
if(!N && !M)
break;
solve();
}
return 0;
}


你可能感兴趣的:(game)