计蒜客2020蓝桥杯B组省赛模拟(一)C题

计蒜客2020蓝桥杯B组省赛模拟(一)C题

我今天逛博客的时候才发现有模拟赛,虽然我不太喜欢计蒜客。。。=-=不过还是题目重要一些。。
原本想写个总的。。有些题目我也不太确定。。还是算了把。

数论题

C题:

结果填空题,平面分割,递推问题,也简单,原先写过。
传送门

参考博客:
https://blog.csdn.net/qq_44624316/article/details/104610829

这里附上适合本题的解题思路:
规律:f(n) = f(n - 1) + n;
f(n) = n * (n + 1) / 2 + 1;
f(0) = 0; f(1) = 2; f(2) = 4; f(3) = 7;
不过不能直接用上面的递推式
因为题目中6条直线分割了7个平面,按照上面的思路的话。。就是f(6) = 22个平面。。显然不对嘛。。不能直接用。
1
我们有五条直线可以操作。
第一条直线最多经过6个平面。
以后的每条直线比上一次穿过的平面多1。找规律发现=-=
然后就会增加对应的平面数。
所以我们可以操作的第一条直线最多经过6个平面,也就是新增加了六个平面。之后的往上累加就行

答案:47

代码部分:

#include <bits/stdc++.h>
using namespace std;

int main()
{
	int ans = 7;
	int cnt = 6;
	for (int i = 1; i <= 5; i++)
	{
		ans += cnt++;
	}
	cout << ans << endl;
	return 0;
}
发布了112 篇原创文章 · 获赞 3 · 访问量 2629

猜你喜欢

转载自blog.csdn.net/qq_44624316/article/details/104991970