官方题解|打印机
2025-04-03 10:52:11
发布于:浙江
14阅读
0回复
1点赞
模拟
在处理试卷打印时,仅需考虑单面打印和双面打印这两种情形。对于双面打印,需要留意的是,若某页纸的正面或反面任意一面需要彩色打印,那么这一整张纸都要采用彩色打印。我们可以运用集合(set)来对最终结果加以统计。
时间复杂度 O()
代码
#include<bits/stdc++.h>
using namespace std;
using i64 = long long;
using i32 = int32_t;
void solve() {
i64 a, b, c, d;
cin >> a >> b >> c >> d;
i64 n, m;
cin >> n >> m;
i64 mins = a * m + (n - m) * c;
set<int> s;
set<int> s2;
for (int i = 1; i <= m; i++) {
int x;
cin >> x;
s2.emplace(x);
x++;
s.emplace(x / 2);
}
mins = min(mins, (i64) (b * s.size() + ((n + 1) / 2 - s.size()) * d));
cout << mins << endl;
}
int main() {
ios::sync_with_stdio(false), cin.tie(nullptr);
int t = 1;
while (t--) {
solve();
}
}
这里空空如也
有帮助,赞一个