Problem 2206 函数求解
Accept: 154 Submit: 456
Time Limit: 1000 mSec Memory Limit : 32768 KB
Problem Description
给出n,求f(n)。
Input
第一行一个正整数T,表示数据组数。 接下来T行,每行一个正整数n。 T<=20,n<=2015000000。
Output
对于每组数据,输出一行f(n)。
Sample Input
2
1
20150001
Sample Output
2015
20152014
这个题规律其实很好发现,博主在做时用一个递归调用,结果RE了,但发现只要输入大于20150001,输出都是20152014,所以我大胆猜想就两种情况,举几组例子输出都差不多,于是就确信了, 但提交老是输出限制,真是脾气上来了,后来比赛结束才知道要么全用int要么全用I64d输出,不然就错,,,发誓再也不用lld输出了,,,,,,,,,,,,还有不能用bits/stdc++.h这种头文件,,也是无语了。。。。。。。。
看代码:
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
int t,n;
scanf("%d",&t);
while(t--)
{
// x=20152014;
scanf("%d",&n);
if(n<20150001)
printf("%d\n",n+2014);
else
printf("20152014\n");//这样也行,但就是输出I64d的区别,
}
return 0;
}