谧怏弦 发表于 2026-2-5 12:45:00

Educational Codeforces Round 76 部分题解

A. Two Rival Students

题意:

一排有 \(n\) 个学生,两个竞争对手分别在位置 \(a\) 和 \(b\)。每次操作可以交换相邻两个学生,最多进行 \(x\) 次操作。求操作后两个竞争对手之间可能的最大距离(即 \(|p-s|\))。

思路:

初始距离为 \(d = |a-b|\)。每次交换可以让一个学生向远离对方的方向移动一步,从而增加 \(1\) 距离。最多可以增加 \(x\) 距离,但最大距离不超过 \(n-1\)(即一个在左端,一个在右端)。因此答案为 \(\min(d + x, n-1)\)。
代码

点击查看代码void solve() {        int n, x, a, b;        cin >> n >> x >> a >> b;        int d = abs(a - b);        int ans = min(d + x, n - 1);        cout3\) 不可达。\(x = 3\):最大只能得到 \(3\),故 \(y > 3\) 不可达。
\(x \ge 4\):总可通过操作1和操作2增长到任意大的数,再通过操作2减到 \(y\),故可达。
</ul></ul>代码

点击查看代码void solve() {    int x, y;    cin >> x >> y;    if (x >= y) {      cout

挫莉虻 发表于 2026-2-6 10:58:01

很好很强大我过来先占个楼 待编辑

荏牌 发表于 2026-2-8 04:02:28

感谢发布原创作品,程序园因你更精彩

聱嘹 发表于 2026-2-9 08:32:09

鼓励转贴优秀软件安全工具和文档!

醋辛 发表于 2026-2-9 16:40:13

用心讨论,共获提升!

祖柔惠 发表于 2026-2-10 02:52:47

谢谢分享,辛苦了

窖咎 发表于 2026-2-10 11:58:31

感谢发布原创作品,程序园因你更精彩

骆贵 发表于 2026-2-10 17:37:02

不错,里面软件多更新就更好了

汹萃热 发表于 2026-2-10 18:17:31

感谢分享,学习下。

咫噎 发表于 2026-2-10 23:32:10

东西不错很实用谢谢分享

汤昕昕 发表于 2026-2-11 12:29:36

yyds。多谢分享

度阡舅 发表于 2026-2-11 14:33:10

过来提前占个楼

圣罩 发表于 2026-2-11 16:05:27

感谢分享,下载保存了,貌似很强大

黎瑞芝 发表于 2026-2-12 06:55:49

前排留名,哈哈哈

方方仪 发表于 2026-2-13 17:18:29

这个好,看起来很实用

筒霓暄 发表于 2026-2-13 17:49:18

谢谢分享,试用一下

祉遛吾 发表于 2026-2-24 04:18:23

感谢分享,下载保存了,貌似很强大

思矿戳 发表于 2026-2-26 04:32:09

分享、互助 让互联网精神温暖你我

羊舌正清 发表于 2026-2-26 15:21:23

鼓励转贴优秀软件安全工具和文档!

袁曼妮 发表于 2026-3-8 12:03:03

新版吗?好像是停更了吧。
页: [1] 2
查看完整版本: Educational Codeforces Round 76 部分题解