HDOJ2050折线分割平面笔记——与对于分割平面的一些小体会

题目地址
思维过程:第一次做的时候,并没有抱着解决一类题的观念去做,美其名曰抱着解决问题的观念。然后还看了下面的递推求解练习,知道是递推题,所以只想着画出来当n=3时的面数。原本的想法是尽量切割更多的平面,连对于直线切割平面怎么获得最大的平面数都不晓得。可是这个“更多的平面”很是模糊,将递推变成了模拟,并且是毫无根据的模拟,没法做。
然后就是今天回顾了,发现漏下许多知识,包括直线切割平面如果获得最大的平面数,参考了某博客。
博客地址
总结起来就是,对于有n条线,第n条线要与n - 1条线都相交,得到n - 1个交点,所以有n - 2条线段和2条射线,
所以又增加了n 个区域。这个是最基本的
回到题目,对于有n - 1条折线时,就存在2 * (n - 1)条线,所以需要和n - 1条线相交,因为是折线,所以折线的第二条线也需要和第n - 1条折线相交,它与自己的那一条线只是个交点,并没有穿过,所以只有两条射线和两条线段,并且两条线段生成一个区域。

#include <iostream>
using namespace std;
int main() {
	int n;
	cin >> n;
	int num[10005];
	num[1] = 2;
	for(int i = 2; i < 10005; i++) {
		num[i] = num[i - 1] + 4 * (i - 1) + 1;
	}
	while(n--) {
		int m;
		cin >> m;
		cout << num[m] << endl;
	}
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Greatljc

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值