数数问题
时间限制(普通/Java) : 1000 MS/ 3000 MS 运行内存限制 : 65536 KByte
总提交 : 169 测试通过 : 70
总提交 : 169 测试通过 : 70
题目描述
yuman正在用左手手指数数,从1数到n。他从大拇指算作1开始数起,然后,食指为2,中指为3,无名指为4,小指为5。接下来调转方向,无名指算作6,中指为7,食指为8,大拇指为9,如此反复。问最后会停在那个手指上?
用编号1、2、3、4、5依次表示大拇指、食指、中指、无名指、小指。
输入
先输入一个正整数T,表示共有T组测试数据,(1<=T<=100)
每组数据占一行,只包含一个正整数n(1<=n<=100000)。
输出
每组数据占一行,输出包含一个介于1和5之间的整数,表示最后停留的手指。
样例输入
2
1
12
样例输出
1
4
怎么说捏,这一题就是找规律,多列举几个数就发现了~~
#include<iostream> using namespace std; int main() { int64_t n; int m; cin>>m; while(m--) {int n; cin>>n; if(n%8==1) { cout<<"1"<<endl; } else if(n%8==5) { cout<<"5"<<endl; } else if(n%4==3) { cout<<"3"<<endl; } else if((n+1)%4==3||(n-1)%4==3) { if(n%8==0||n%8==2) cout<<"2"<<endl; else { cout<<"4"<<endl; } } } }
多看看还是能发规律哒~
版权声明:本文为博主原创文章,未经博主允许不得转载。