不明白哪里除了问题
#include<stdio.h>
int search(long i,long current,long n,long m,bool acessed[],bool &flag)
{
int left=current-(2*i-1),right=current+(2*i-1);
if(left==m||right==m)
{
flag=true;
return 1;
}
else
{
if(left>0 && left<=n && !acessed[left])
{
acessed[left]=true;
search(i+1,left,n,m,acessed,flag);
}
if(right>0 && right<=n && !acessed[right])
{
acessed[right]=true;
search(i+1,right,n,m,acessed,flag);
}
}
return 1;
}
int main()
{
long m;
long n;
long i;
bool flag;
bool acessed[1000001];
scanf("%ld %ld\n",&n,&m);
while(n!=0)
{
flag=false;
for(i=0;i<n;i++)
{
acessed[i]=false;
}
acessed[1]=true;
search(2,1,n,m,acessed,flag);
if(flag)
{
printf("Let me try!\n");
}
else
{
printf("Don't make fun of me!\n");
}
scanf("%ld %ld\n",&n,&m);
}
return 1;
}