2 条题解

  • 0
    @ 2023-11-11 21:06:25

    这道题要考虑几个地方

    • 第一个:需要将ID和贡献值对应起来。这里我用结构体实现。
    • 第二个:每个ID的贡献值变化可能是多次,输入时要找到同样ID的位置来改变贡献值(这里桶排容易理解,但是结构体更清晰。)
    • 第三个:题目中括号里强调了 (若出现两个选手的贡献值相等的情况下,最终贡献值更早出现的选手为内奸) 要处理这个问题,需要在每次输入时做一个标记,来记录贡献值变化的先后顺序。这是这道题重点。

    基于以上三点完成代码,最后,在输出时,用sort对结构体的贡献值元素进行正排序,把最小的贡献值排在第一个。如果有相同的贡献值的ID,对这个ID的标记进行比较,标记值越小的说明越先达到最小值,那么输出这个标记的ID和贡献值就完成了。

    PS:(对于sort进行结构体排序,需要声明一个bool的函数来对sort排序进行说明,具体方法群里有涛队的文件,需要的可以打开学习学习)

    信息

    ID
    932
    时间
    1000ms
    内存
    256MiB
    难度
    9
    标签
    递交数
    490
    已通过
    42
    上传者