数数 南邮NOJ2060

数数问题

时间限制(普通/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个手指头稍微麻烦点而已~

多看看还是能发规律哒~

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/Tobyuyu/p/4965661.html