专题三 Problem1014

题目大意:

n条折线分割平面的最大数目。比如,一条折线可以将平面分成两部分,两条折线最多可以将平面分成7部分。输入一个正整数C,表示有C组测试实例,然后输入正整数n,表示有N条折线,输出N条折线可以分割平面的最多块数。如下图为2条折线的情况:

专题三 Problem1014_第1张图片

解题思路:

我们平常做的都是一些直线分割平面的情况,这种情况还是第一次做,但是我觉得应该跟平面一样,其中都隐藏着一些数学的规律,只要我们把这个规律找出来,其他的一切都迎刃而解了。我找了三条折线,发现最大块数是16,然后我找了4条的时候,发现最大块数是29,5块是46,然后我就认定这其中肯定有规律,我就用来最古老的办法,自己挨个试,然后我就发现最大平面块数=2*n*n-n+1,如此一来就简单了。

感想:

这道题难倒是不难,关键在于发现那个规律Answer=2*n*n-n+1,然后这其中最困难的就是画折线找其中能划分的最大块数,简直就是太麻烦了。

代码如下:

#include<iostream>
using namespace std;
int main()
{
int c,n;
cin>>c;
while(c--)
{
cin>>n;
int ans=2*n*n-n+1;
cout<<ans<<endl;
}
//system("pause");
return 0;
}



你可能感兴趣的:(专题三 Problem1014)