//递推//折线分割平面------[NWPU][2018寒假作业][通用版]二F题
2018-01-27 15:48
337 查看
我们看到过很多直线分割平面的题目,今天的这个题目稍微有些变化,我们要求的是n条折线分割平面的最大数目。比如,一条折线可以将平面分成两部分,两条折线最多可以将平面分成7部分,具体如下所示。
Input
输入数据的第一行是一个整数C,表示测试实例的个数,然后是C 行数据,每行包含一个整数n(0大于n小于等于10000),表示折线的数量。
Output
对于每个测试实例,请输出平面的最大分割数,每个实例的输出占一行。
Sample Input
2
1
2
Sample Output
2
7
解题思路:
找出递推公式。
发现分割数是交点数+1,而分割数最大时交点一定最多,所以新添的折线中每一条都能与所有原有线相交,且折线还有一个折点。
所以递推公式为:ans[i]=ans[i-1]+4*i-3
先将1到10000的答案计算出来,再直接输出。
Input
输入数据的第一行是一个整数C,表示测试实例的个数,然后是C 行数据,每行包含一个整数n(0大于n小于等于10000),表示折线的数量。
Output
对于每个测试实例,请输出平面的最大分割数,每个实例的输出占一行。
Sample Input
2
1
2
Sample Output
2
7
解题思路:
找出递推公式。
发现分割数是交点数+1,而分割数最大时交点一定最多,所以新添的折线中每一条都能与所有原有线相交,且折线还有一个折点。
所以递推公式为:ans[i]=ans[i-1]+4*i-3
先将1到10000的答案计算出来,再直接输出。
#include<stdio.h> int ans[10010]={0}; void init() { ans[1]=2; ans[2]=7; for(int i=3;i<=10000;i++) { ans[i]=ans[i-1]+4*i-3; } } int main() { int c,n,i; init(); scanf("%d",&c); for(i=1;i<=c;i++) { scanf("%d",&n); printf("%d\n",ans ); } }
相关文章推荐
- //为什么一直PE?//经营水果商店------[NWPU][2018寒假作业][通用版]二C题
- //搞不清楚for循环真的害死人//贪心FatMouse's Trade------[NWPU][2018寒假作业][通用版]二E题
- Doing Homework Again贪心------[NWPU][2018寒假作业][通用版]二、stl ,模拟,贪心等 [Cloned]P题
- stl的map1------[NWPU][2018寒假作业][通用版]二、stl ,模拟,贪心等 [Cloned]A题
- stl的map2------[NWPU][2018寒假作业][通用版]二、stl ,模拟,贪心等 [Cloned]B题
- Hero贪心2------[NWPU][2018寒假作业][通用版]二Q题
- //动能定理和弹性势能//James Bond------[NWPU][2018寒假作业][通用版]二D题
- //switch结构//Edge------[NWPU][2018寒假作业][通用版]一C题
- Robot Motion------[NWPU][2018寒假作业][通用版]一F题
- A + B ------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]E题
- Candy Sharing Game------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]B题
- Digital root------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]M题//求数字根的简便方法
- Dirichlet's Theorem on Arithmetic Progressions------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]O题
- Ignatius and the Princess IV ------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]J题
- Joseph------[NWPU][2018寒假作业][通用版]一、热身 [Cloned]R题
- HDU2054 A==B------ [NWPU][2018寒假作业][通用版]一、热身 [Cloned]Y题
- *寒假水15——折线分割平面
- 递推------折线分割平面
- HDU2050折线分割平面(规律)
- 折线分割平面