1 条题解

  • 0
    @ 2025-8-24 21:17:23

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar 览遍千秋
    将伤与泪汇成力化作拳

    搬运于2025-08-24 21:17:22,当前版本为作者最后更新于2025-02-16 18:52:38,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    Source and Knowledge

    2025 年 2 月语言月赛,由洛谷网校提供。

    考察分支结构。


    文字题解

    xx 站坐到 yy 站,顺时针需要坐 (yx+n)modn(y-x+n)\bmod n 站,逆时针需要坐 n(yx+n)modnn-(y-x+n)\bmod n 站。

    下面是上面结论的推导过程,我们只需要考虑清楚顺时针乘坐的站数即可,因为逆时针一定需要乘坐完剩下全部的站点:

    • y>xy>x
      • 顺时针乘坐,站点编号由小变大,需要乘坐 yxy-x 站路
      • 逆时针乘坐,需要乘坐 n(yx)n-(y-x) 站路
    • y<xy<x
      • 顺时针乘坐,站点编号先从 xx 由小变大至 nn,再由 nn 变化为 11,再依次增长至 yyxnx\to nnxn-x 站;n1n\to 111 站;1y1\to yy1y-1 站。合计 yx+ny-x+n 站。
      • 逆时针乘坐,需要乘坐 n(yx+n)n-(y-x+n) 站。

    综合两个方面,顺时针乘坐 (yx+n)modn(y-x+n)\bmod n 站,逆时针用 nn 减去前式即可。用两个方向需要乘坐的站点数进行比较,输出对应的答案即可。

    C++ 语言中," 被用于标识字符串的开头与结尾。如果字符串中需要包含字符 ",需要用转义符 \ 标识。例如,"a\"b" 在 C++ 语言中,表示字符串 a"b

    • 1

    信息

    ID
    11364
    时间
    100ms
    内存
    512MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者