折线分割平面 HDU2050

瑾谋

关注

阅读 59

2022-07-13


折线分割平面 HDU2050

折线分割平面 HDU2050_#define

折线我们可以看成两条线段,每条线段和其他的线段相交会增加一个部分,而这条折线的两条线段又会形成一个部分(图中的5),即

dp[n] = dp[n - 1] + 4(n-1) + 1
= dp[n - 1] + 4n - 3

代码:

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
#define int long long
int dp[10005];
signed main(){
IOS;
dp[1] = 2;
for(int i = 2;i <= 10000;++i) //初始化打表
dp[i] = dp[i - 1] + 4 * i - 3;
int tt,t;cin>>tt;
while(tt--)
cin>>t,cout<<dp[t]<<"\n";
return 0;
}

如果对折线不理解,可以先看看直线、圆形的递推:

第十一届蓝桥杯A组省赛平面分割


精彩评论(0)

0 0 举报