FOJ有奖月赛-2015年11月 Problem B 函数求解

题目链接:http://acm.fzu.edu.cn/contest/problem.php?cid=146&sortid=2

思        路:直接模拟运算过程,当n>=20150001时,运算过程有两种一是n-=2015后n<20150001得出结果二是继续运算n>=20150001的情况。如下所示

代码如下:

#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <cmath>
#include <vector>
using namespace std;
typedef __int64 LL;

int main()
{
    int T;
    scanf ( "%d", &T );
    while( T-- )
    {
        LL n;
        scanf( "%I64d", &n );
        if( n < 20150001 )
        {
            printf("%I64d\n", n+2014 );
        }
        else
        {
            while( n >= 20150001 )//判断是那种情况
            {
                if( n >= 20150001 )
                    n -= 2015;
                if( n < 20150001 )
                    n += 2014;
            }
            printf("%I64d\n", n+2014 );
        }
    }
    return 0;
}

发布了119 篇原创文章 · 获赞 4 · 访问量 4万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章