AtCoder Beginner Contest 047
A - Fighting over Candies
简单排序。
#include <bits/stdc++.h> using namespace std; using i64 = long long; int main() { ios::sync_with_stdio(false), cin.tie(nullptr); vector<int> a(3); cin >> a[0] >> a[1] >> a[2]; sort(a.begin(), a.end()); if (a[2] == a[0] + a[1]) cout << "Yes"; else cout << "No"; return 0; }
B - Snuke's Coloring 2 (ABC Edit)
如果着眼于计算被涂黑部分的面积就不利于计算。就本题而言应该直接去计算余下的白色面积。这就需要端点坐标。
分类讨论:当
#include <bits/stdc++.h> using namespace std; using i64 = long long; int main() { ios::sync_with_stdio(false), cin.tie(nullptr); int W, H, N; cin >> W >> H >> N; int a1 = 0, a2 = W, a3 = 0, a4 = H; for (int i = 0; i < N; i++) { int x, y, a; cin >> x >> y >> a; if (a == 1) { a1 = max(a1, x); } else if (a == 2) { a2 = min(a2, x); } else if (a == 3) { a3 = max(a3, y); } else { a4 = min(a4, y); } } if (a2 <= a1 || a4 <= a3) cout << 0; else cout << (a2 - a1) * (a4 - a3); return 0; }
C - 1D Reversi
通过在草稿纸上模拟可以看出,答案即为字符串相邻字符不相同的个数。
举例:对于 WBBW,在最右边增加 B,变为 WBBBB,只需在左侧再加上一个 B 即可。也即每次增加的字符,都是把相邻的不同字符更改为相同。
#include <bits/stdc++.h> using namespace std; using i64 = long long; int main() { ios::sync_with_stdio(false), cin.tie(nullptr); string s; cin >> s; int ans = 0; for (int i = 1; i < s.size(); i++) { if (s[i] != s[i - 1]) ans++; } cout << ans; return 0; }
D - An Invisible Hand
本题难在理解题意。以样例三为例。
得到最高利润的方式有多种,可以是
因此只需要统计有几组这样的最高利润即可,答案就是组数。
对数组遍历,用
再遍历一遍,但凡
#include <bits/stdc++.h> using namespace std; using i64 = long long; int main() { ios::sync_with_stdio(false), cin.tie(nullptr); int N, T; cin >> N >> T; vector<int> a(N), b(N); int minn = 0x3f3f3f3f, maxm = -0x3f3f3f3f; for (int i = 0; i < N; i++) { cin >> a[i]; b[i] = a[i] - minn; minn = min(minn, a[i]); maxm = max(maxm, b[i]); } int ans = 0; for (int i = 0; i < N; i++) { if (b[i] == maxm) ans++; } cout << ans; return 0; }
本文作者:pangyou3s
本文链接:https://www.cnblogs.com/pangyou3s/p/18374001
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步