http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=23582
题目挂了
n个人中的m号 喊第k次的数字是多少
#include <cstdio>
using namespace std;
int pd(int n)
{
if(n%7==0)return 1;
while(n)
{
if(n%10==7)return 1;
n/=10;
}
return 0;
}
int main()
{
int m,n,k,a,b;
while(scanf("%d%d%d",&m,&n,&k)!=EOF)
{
if(m==0&&n==0&&k==0)break;
if(k==1&&pd(n)){printf("%d\n",n);continue;}
a=n;
if(pd(a))k--;
while(k>=1)
{
b=a;
a+=(m-n)*2;
if(a!=b&&pd(a)){if(k==1){printf("%d\n",a);break;}else k--;}
b=a;
a+=(n-1)*2;
if(a!=b&&pd(a)){if(k==1){printf("%d\n",a);break;}else k--;}
}
if(k==0)printf("-1\n");
}
return 0;
}