NYOJ-摆方格(贪心)

摆方格


描述:

给你一个n*n的方格,每个方格里的数必须连续摆放如 
1   2
4   3     
下图为不连续的,请输出从左上角到右下角的对角线上的最大和  
1  3
4  2
输入:
输入包含多组测试数据。
每一行包括一个数据n,表示n*n的方格(保证所有数据在2^64范围内且n>0)
输出:
每行输出占一行,输出最大的对角线之和。
样例输入:
1
2
3
样例输出:
1
6
19

程序代码:

#include<stdio.h>  
int main()  
{  
    long long n,i,j,k,sum;  
    while(scanf("%lld",&n)!=EOF)  
    {  
        k=n*n;  
        sum=0;  
        for(i=0;i<n-1;i++)  
        {  
            sum+=k;  
            k-=2;  
        }  
        k/=2;  
        sum+=k;  
        printf("%lld\n",sum+1);  
    }  
    return 0;  
}


猜你喜欢

转载自blog.csdn.net/hezhiying_/article/details/80716022