1 条题解
-
0
自动搬运
来自洛谷,原作者为

一扶苏一
休息结束。邮箱 yifusuyi@qq.com搬运于
2025-08-24 21:16:58,当前版本为作者最后更新于2024-12-17 20:11:11,作者可能在搬运后再次修改,您可在原文处查看最新版自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多
以下是正文
[语言月赛 202412] 题目名没活了 题解
Source & Knowledge
本题来源于 2024 年 12 月的语言月赛,主要考察一维循环
文字题解
题目大意
给定一支队伍的提交记录,需要计算出这支队伍共通过了多少道不同的题目。
解析
读入
首先读取记录条数
n和题目数量p。int n, p; cin >> n >> p;记录题目通过状态
我们可以使用一个布尔数组
passed来记录每道题目是否已经被通过,初始时所有值均为false。bool passed[1005];处理提交记录
遍历每条提交记录,如果记录表示通过(
state_i == 1),并且该题目之前没有被标记为通过,则将其标记为通过。for (int i = 0; i < n; ++i) { int pid, state; cin >> pid >> state; if (state == 1 && !passed[pid]) { passed[pid] = true; } }计算通过题目数量
最后,遍历
passed数组,统计被标记为true的元素数量,即为通过的不同题目数量。int count_passed = 0; for (int i = 1; i <= p; ++i) { if (passed[i]) count_passed++; }输出
输出通过的不同题目数量。
cout << count_passed << endl;通过上述步骤,我们可以有效地计算出这支队伍共通过了多少道不同的题目。
- 1
信息
- ID
- 11103
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 1
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者