码迷,mamicode.com
首页 > 其他好文 > 详细

报数游戏 湖南省第七届省赛

时间:2016-08-11 17:49:11      阅读:174      评论:0      收藏:0      [点我收藏+]

标签:

一切解释尽在代码中!!!

AC代码:

#include <cstdio>
#include <iostream>
using namespace std;
int is(int  x)
{
 if(x%7==0) return 1;
 while(x)//判断一个数里面是否包含7
 {
  if(x%10==7) return 1;
  x/=10;
 }
 return 0;
}
int main()
{
 int n,m,k;
 while(scanf("%d %d %d",&n,&m,&k),(n||m||k))
 {
  int ans=0,s=0,i=0,f=1;//f用来标记,s用来统计m号举手的次数,
  //ans用来统计m号恰好举手k次的数值,i是1-n之间左右移动的光标
  while(s!=k)
  {
   if(f) i++;//从左往右报
   else  i--;//从右往左报
   ans++;
   if(i==m&&is(ans)) s++;//报到了m就判断这个数是否符合规则
   if(i==n) f=0;//从左往右报如果报到了n个人,则从n-1开始往左报
   if(i==1) f=1;//从右往左报如果报到了第1个人,则从第2开始往右报
  }
  printf("%d\n",ans);
 }
 return 0;
}

 

报数游戏 湖南省第七届省赛

标签:

原文地址:http://www.cnblogs.com/www-cnxcy-com/p/5761589.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!