B3682 [语言月赛202211] Jewellery 题解
B3682 [语言月赛202211] Jewellery 题解
Source & Knowledge
2022 年 11 月语言月赛,由洛谷网校入门计划/基础计划提供。
文字题解
题目大意
给定
解析
首先,可以统计每种道具的抽中的次数。我们使用一个长度为
对于第
因此,我们统计每种道具的抽中次数,按照上面的方式计算即可。
以下为统计次数过程核心代码:
struct node {
string name;
int val;
int cnt;
} a[1005];
cin >> n >> k;
for (int i = 1; i <= n; ++i)
cin >> a[i].name >> a[i].val;
for (int i = 1; i <= k; ++i) {
string var;
cin >> var;
for (int j = 1; j <= n; ++j) {
if (var == a[j].name) {
a[j].cnt++;
break;
}
}
}
以下为计算过程核心代码:
const int value[] = { 0, 2000, 1000, 200, 36, 6 };
for (int i = 1; i <= n; ++i) {
ans += value[a[i].val] * (a[i].cnt - 1);
}
视频题解
完整代码请在视频中查看。