题目链接http://acm.hdu.edu.cn/showproblem.php?pid=2050
题目解析:
本题就是一个很基本的递推题目,可以直接通过n-1时候的状态来推出n时候的状态
得出一个递推公式 f[n] = f[n-1]+(2*(n-1)+1)+2*(n-1) = f[n-1]+4*(n-1)+1
通过计算 我们可以得到f[n] = 2*n*n-n+1;
注意点:
最好用long long 类型,因为0<n<=10000,所以int类型超出范围。
代码
#include <stdio.h>
#include <stdlib.h>
int main(){
int T,n;
long long m;
scanf("%d", &T);
while(T--){
scanf("%d", &n);
m = 2*n*n-n+1;
printf("%I64d\n", m);
}
return 0;
}