数数 南邮NOJ2060

来源:互联网 发布:redis java lrange 编辑:程序博客网 时间:2024/06/06 14:08

数数问题

时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
总提交 : 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;       }   }  }}


主要就是第2个和第4个手指头稍微麻烦点而已~

多看看还是能发规律哒~

0 0
原创粉丝点击