求11,c++
#include<bits/stdc++.h>
using namespace std;
int t,p,x[205],y[205];
short fl[10005][10005];
bool flag=0;
short f(int xx,int yy)
{
if(fl[xx][yy]==-1)
{
return fl[xx][yy];
}
fl[xx][yy]=-1;
if(!xx)
{
return 1;
}
if(!yy)
{
return 2;
}
return fl[xx][yy]=f((xx+yy)%p,((xx+yy)%p+yy)%p);
}
int main(){
cin>>t>>p;
for(int i=1;i<=t;i++)
{
cin>>x[i]>>y[i];
}
for(int i=1;i<=t;i++)
{
if(x[i]==0&&y[i]==0)
{
cout<<"error"<<endl;
continue;
}
int k=f(x[i],y[i]);
if(k==-1)
{
cout<<"error"<<endl;
}
else{
cout<<k<<endl;
}
}
return 0;
}