HM272 按轮抽签

HM272 按轮抽签

HM272 按轮抽签

来源: 第 272 集 演讲比赛流程管理系统-抽签功能实现

难度: 普及-

时间限制: 1s

空间限制: 64MB

题目描述

选手建档之后,用 startSpeech 把整届流程串起来。它先用中文架子写下步骤,再逐步填实现:

  1. 第一轮:抽签 → 比赛 → 显示晋级;
  2. 第二轮:抽签 → 比赛 → 显示最终结果;
  3. 最后保存前三名分数到文件。

本题只实现第一步里的抽签,封装 speechDraw。根据 m_Index 决定打乱哪一个容器:轮数为 \(1\) 时打乱 v1,否则打乱 v2。课堂上用 random_shuffle(需要 <algorithm>)。评测不能依赖未固定种子的随机数,因此打乱结果由输入直接给出:把给定序列视为已经洗牌后的演讲顺序,按该顺序写入对应容器并打印。

抽签时先提示 第X轮比赛选手正在抽签(\(X\) 为当前轮数),再提示 抽签后演讲顺序如下,然后按顺序输出全部编号。

输入格式

第一行两个整数 \(roundIndex\)、\(n\)(\(roundIndex \in \{1,2\}\),\(1 \le n \le 12\))。

第二行 \(n\) 个整数,为该轮抽签后的编号顺序。

输出格式

第一行:、轮数、轮比赛选手正在抽签,中间无空格。

第二行:抽签后演讲顺序如下

第三行:\(n\) 个编号,相邻之间一个空格。行末换行。

样例

输入 #1

1 12
10006 10001 10009 10002 10005 10004 10012 10003 10008 10007 10010 10011

输出 #1

第1轮比赛选手正在抽签
抽签后演讲顺序如下
10006 10001 10009 10002 10005 10004 10012 10003 10008 10007 10010 10011

输入 #2

2 6
10007 10001 10012 10003 10008 10009

输出 #2

第2轮比赛选手正在抽签
抽签后演讲顺序如下
10007 10001 10012 10003 10008 10009

说明

startSpeech 负责整届流程,但本题只把抽签做完。样例 1 是第一轮 \(12\) 人,写入并打印 v1;样例 2 是第二轮 \(6\) 人,操作的是 v2。不要在程序里调用未播种的随机函数。

信息

ID
1271
难度
(无)
分类
(无)
标签
(无)
递交数
0
已通过
0
通过率
?
上传者