HDOJ1977 Consecutive sum II

来源:互联网 发布:高颜值笔记本 知乎 编辑:程序博客网 时间:2024/05/22 04:32

Consecutive sum II

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3302    Accepted Submission(s): 1643


Problem Description
Consecutive sum come again. Are you ready? Go ~~
1    = 0 + 1
2+3+4    = 1 + 8
5+6+7+8+9  = 8 + 27

You can see the consecutive sum can be representing like that. The nth line will have 2*n+1 consecutive numbers on the left, the first number on the right equal with the second number in last line, and the sum of left numbers equal with two number’s sum on the right.
Your task is that tell me the right numbers in the nth line.
 

Input
The first integer is T, and T lines will follow.
Each line will contain an integer N (0 <= N <= 2100000).
 

Output
For each case, output the right numbers in the Nth line.
All answer in the range of signed 64-bits integer.
 

Sample Input
3012
 

Sample Output
0 11 88 27
 虽然题目说了N (0 <= N <= 2100000),但还没到N=2100000的时候long就放不下了。
但题目又说了All answer in the range of signed 64-bits integer,所以前面的范围等于没讲。。。
写几个案例就知道其中的规律了。
import java.util.Scanner;public class Main{private static Scanner scanner;public static void main(String[] args) {scanner = new Scanner(System.in);int cases = scanner.nextInt();while(cases-->0){long line = scanner.nextInt();System.out.println(line*line*line+" "+(line+1)*(line+1)*(line+1));}}}