专栏文章
题解:P13836 微观戏剧(Constructive ver.)
P13836题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mio42cec
- 此快照首次捕获于
- 2025/12/02 13:01 3 个月前
- 此快照最后确认于
- 2025/12/02 13:01 3 个月前
核心知识点:没有知识点,纯观察。
本题还是相当有意思的。
对于极小的数据,我们最好先看一下样例。
样例给了我们一点启发:
- 的时候是两个相同的点(其实挺显然)。
- 的时候是无解的(这个稍微想想也是挺简单的一个事吧)。
- 的情况,样例没有提供。我们先不急。
接下来得出一个重要的结论:。也挺好理解:要不就是 与 之间直连,要不就是到 中转一下,也挺明白。
这个结论虽然可以说是 100% 正确的,但是大家有没有注意到对于 ( 也一样,我们先假设 )这个题目有一个特殊性质:(事实上,之所以特殊就在于 是所有的正整数的因数之一,但是这里其实有点问题,因为这个时候“去 中转一下”的情况就不是 的代价了而是 的代价)。
这个事实上对于 都是成立的,但是这里还要考虑下这个题目的数据范围限制,所以对于 这么做都是没什么问题的。
那么问题又到了对于 的情况了是吧。
我们有一个很简单的结论,就是只要这两个数其中一个数不是另一个数的因数,那么就一定存在 ,所以简单的,我们输出两个比较接近的数就行。但是注意到不能超过 ,所以还是有点讲究,比如按照这样的写法就没有问题,也不必判定奇偶性,挺方便:
cout<<(n+2)/2<<' '<<n-(n+2)/2<<'\n';。代码实现比较丑,不放了。
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...