題目鏈接: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;
}