题目描述
小明无聊的时候喜欢推导一些奇怪的东西,在他推到出n条直线最多分割多少个平面后,他又闲着无聊想推到n条折线最多分割多少个平面。现在希望你们能给小明一些数据进行验证,推导的公式是否正确。
输入
第一行一个整数N表示,接下来有N行测试数据,每行输入一个整数n,表示有n条直线与n条折线。
输出
对每个测试每行输出两个数a,b;中间用一个空格分开,a代表n条直线最多能分割的平面数,b代表n条折现最多能分割的平面数。
样例输入
2
1
2
样例输出
2 2
4 7
看起来挺麻烦,其实还是有很简单的规律。
#include<iostream>
using namespace std;
int main()
{
int n,f[10000],m,s[10000];
cin>>m;
for(int k=0;k<m;k++)
{
cin>>n;
f[0]=1;
f[1]=2;
s[0]=1;
s[1]=2;
for(int i=2;i<=n;i++)
f[i]=f[i-1]+i-1+1;
cout<<f[n]<<" ";
for(int i=2;i<=n;i++)
s[i]=s[i-1]+(i-1)*4+1;
cout<<s[n]<<endl;
}
}