题目链接:点击打开链接
题意描述:给定一个无线大的平面,问给n个M型的折线最多能把平面分成几部分?
解题思路:
我们发现对于直线
1 - 2
2 - 4
3 - 7
4 - 11
5 - 16
6 - 22
7 - 29
8 - 37
而对于M型的折线
1-2
2-19
我们知道M型折线相当于4条直线
观察发现
1 - 4 2 - 8
2 11 19 37
9 18
所以规律为 8*n^2 - 7*n + 1
代码:
java.io.BufferedInputStream;
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
private static Scanner cin;
public static void main(String[] args){
int T;
cin = new Scanner(new BufferedInputStream(System.in));
T=cin.nextInt();
BigInteger num;
for(int t=1;t<=T;++t){
num=cin.nextBigInteger();
BigInteger t1=num.multiply(num).multiply(BigInteger.valueOf(8));
BigInteger t2=num.multiply(BigInteger.valueOf(7));
BigInteger ans=t1.subtract(t2).add(BigInteger.valueOf(1));
System.out.println("Case #"+t+": "+ans);
}
}
}