【CSU-2059】解题报告(递推,几何)
HDU-2050变式拓展
原始题目
2059: Water Problem
- Time Limit: 1 Sec
- Memory Limit: 128 Mb
- Submitted: 576
- Solved: 199
### Description 一条‘Z’形线可以将平面分为两个区域,那么由N条Z形线所定义的区域的最大个数是多少呢?每条Z形线由两条平行的无限半直线和一条直线段组成
Input
首先输入一个数字T(T<100),代表有T次询问 每次询问输入一个数字N(N<1e8),代表有N条Z形线
Output
对于每次询问,在一行输出N条‘Z’形线所能划分的区域的最大个数为多少
Sample Input
2
1
2
Sample Output
2
12
Hint
Source
Author
csutsz
题目大意
如题
解题思路
- 先推导递推式,由于数据量大,再推导通项公式最后直接输出。
- 分析:第i条z形线比第i-1条z形线新分成的最多区域数为新增最多交点个数+1
- 第i条线最多与前i-1条z形线交 \(4\*(i-1)\) 个点。 \[ dp[i]=dp[i-1]+4\*(i-1)+! , dp[1]=2 \]
- 所以得到通项公式 \[ dp[i]=\frac{9\*(i-1)\*(i)}{2}+i+1 \]
解题代码
1 |
|
收获与反思
- 折线,z形线,类似的都转化到与新增交点数的关系。
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!