rt,实现是O(1.6×107)的复杂度,输出为O(T),但是全部超时
于是我将实现下调至了O(1×106),但是仍然全部TLE,求条
#include<bits/stdc++.h>
using namespace std;
int w,h;
int ans[222][222];
int main()
{
for(int i=1;i<=200;i++)
ans[i][1]=ans[1][i]=1;
for(int i=2;i<=200;i++)
{
for(int j=2;j<=200;j++)
{
for(int k=1;k<i;k++)
{
ans[i][j]|=!ans[k][j]&!ans[i-k][j];
if(ans[i][j])break;
}
for(int k=1;k<j;k++)
{
ans[i][j]|=!ans[i][k]&!ans[i][j-k];
if(ans[i][j])break;
}
}
}
/*printf("{");
for(int i=1;i<200;i++)
{
printf("{");
for(int j=1;j<200;j++)
{
printf("%d,",ans[i][j]);
}
printf("%d},",ans[i][200]);
}
printf("{");
for(int j=1;j<200;j++)
{
printf("%d,",ans[200][j]);
}
printf("%d}}",ans[200][200]);*/
while(scanf("%d%d",&w,&h))
else if(ans[w][h]==1)printf("WIN\n");
else printf("LOSE\n");
}