miaonei collegiate programing contes #021 (mcpc) (21级专场)

Done ACM/ICPC Start at: 2021-10-31 14:00 3 hour(s) Host: 10

10.24 -- 1024 = 210\sout{2^{10}}是程序猿(媛)的节日哦。

我们将于2021-10-24 31 14:00pm 举办猫猫星の守望第一次比赛,我们准备了8108 - 10道值得思考的题目留给大家。

我们为新生准备了一个月的时间进行准备,所有新生注意了,如果你想参加本次比赛并获得奖品的话,你需要学会以下知识点:

  1. 分支结构
  2. 循环结构
  3. 数组的运用
  4. 结构体的运用
  5. 位运算的相关知识
  6. 时间复杂度为O(log2n)O({log}_2n)的排序算法,例如快速排序,这里我建议c++中的sort函数,如果不会,可以考虑c中的qsort函数.
  7. 最后也是最重要的,一颗热爱学习的心。

本次比赛将进行rated积分。

出题人:神奈猫猫头, Aurora, xat, cn_hook, Villager_31

验题人:神奈猫猫头, Aurora, xat, cn_hook, Villager_31

注意

  1. 比赛为线下赛,参加的同学当天需要准备学生证到场
  2. 需自行携带电脑
  3. 不需要报名,比赛时间到场即可

参赛地点:科技楼南1001

奖励:

我们为第一名的同学准备了一本《C primer plus(第六版)》,第二名准备了一个魔方,第三名的同学准备了一瓶牛奶(神奈猫猫头很喜欢喝的纯牛奶),同时在赛后会使用下面的代码从所有得分选手中抽出 5% 给予 2CNY 的幸运奖:

以上奖品均由神奈猫猫头提供,由猫猫星的守望出题组提供技术支持。

#include <bits/stdc++.h>
using namespace std;
vector<bool> vis;
int main() {
    int seed, cnt;
    cin >> seed /* 比赛期间最后一次提交的用户的 uid */ >> cnt /* 分数大于 0 分的用户数量 */;
    int m = cnt / 20 + (cnt % 20 > 0);
    mt19937 mt(seed);
    vis.resize(cnt);
    for (register int i = 1; i <= m; i++) {
        int base = mt() % cnt;
        while (vis[base]) base = (base + 1) % cnt;
        vis[base] = true;
        cout << base + 1 << endl;
    }
    return 0;
}
Status
Done
Rule
ACM/ICPC
Problem
1
Start at
2021-10-31 14:00
End at
2021-10-31 17:00
Duration
3 hour(s)
Host
Partic.
10