记录编号 |
343445 |
评测结果 |
AWWEEEETTT |
题目名称 |
Play with Power |
最终得分 |
10 |
用户昵称 |
God-Nan |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
6.516 s |
提交时间 |
2016-11-09 10:56:54 |
内存使用 |
3.30 MiB |
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;
void cool(int x,int y);
void clear();
int n,m,a,b;
int lz[10000][100];
int main()
{
freopen("play.in","r",stdin);
freopen("play.out","w",stdout);
int i,p,k,l;
scanf("%d%d",&n,&m);
for(i=1;i<=m;i++)
{
scanf("%d%d",&a,&b);
if(a==1)
{ printf("Missing\n");
/* bool f=0;
cool(a+1,b);
for(p=b;lz[a+1][p];p++)
if(lz[a+1][p]!=(p-b+1)%2+1)
{
f=1;
if(lz[a+1][p]==1)
printf("Masha\n");
else
printf("Stas\n");
break;
}
if(!f)
printf("Missing\n");
*/
}
else
{
cool(a,b);
if(lz[a][b]==1)
printf("Masha\n");
else if(lz[a][b]==2)
printf("Stas\n");
}
clear();
}
return 0;
}
void cool(int x,int y)
{
if(lz[x][y])
return ;
int total=x,i;
for(i=1;i<=y-1;i++)
total*=x;
if(total>n)
{
if((x+y-a-b)%2==0)
lz[x][y]=1;
else
lz[x][y]=2;
return ;
}
cool(x+1,y);cool(x,y+1);
if((x+y-a-b)%2==0)
{
if(lz[x+1][y]==1||lz[x][y+1]==1)
lz[x][y]=1;
else
lz[x][y]=2;
}
else
{
if(lz[x+1][y]==2||lz[x][y+1]==2)
lz[x][y]=2;
else
lz[x][y]=1;
return ;
}
}
void clear()
{
int i,p;
for(i=1;i<=100;i++)
for(p=1;p<=100;p++)
lz[i][p]=0;
return ;
}