现在的位置: 首页 > 综合 > 正文

金色十月线上编程比赛第一题:小女孩数数

2017年10月27日 ⁄ 综合 ⁄ 共 655字 ⁄ 字号 评论关闭

  • 发布公司:
  • 有 效 期:
  • 赛    区:
    • CSDN
    • 2014-10-142015-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;
    }        

  • 抱歉!评论已关闭.