金色十月线上编程比赛第一题:小女孩数数
- CSDN
- 2014-10-14至2015-10-14
- 北京
- 难 度 等 级:
- 答 题 时 长:
- 编程语言要求:
- 120分钟
- C C++ Java C#
题目详情
一个小女孩正在用左手手指数数,从1数到n。她从拇指算作1開始数起。然后,食指为2,中指为3。无名指为4,小指为5。接下来调转方向,无名指算作6,中指为7,食指为8。大拇指为9,如此重复。
问最后会停在那个手指上?用编号1、2、3、4、5依次表示大拇指、食指、中指、无名指、小指。
输入格式:
输入多组数据。每组数据占一行,仅仅包括一个整数n(1<=n<=1000000000)。
输出格式:
每组数据占一行,仅仅包括一个介于1和5之间的整数,表示最后停留的手指。
答题说明
输入例子:
1
10
1000000000
输出例子:
1
2
2
我提交的代码
#include<iostream> using namespace std; int main() { int n; while(cin>>n) { if(n<=5) {cout<<n<<endl;} else { int line,rest; n=n-5; line=1; if(n%4==0) {rest=0;line+=n/4;if(line%2==0) cout<<1<<endl;else cout<<5<<endl;} else {rest=n%4;line+=n/4;line++; if(line%2==0) cout<<5-rest<<endl; else cout<<1+rest<<endl;} } } return 0; }