2020年浙江大学城市学院新生赛
栗子栗子栗子栗子
这个作者很懒,什么都没留下…
展开
-
L No 114514
https://ac.nowcoder.com/acm/contest/9934/L 题意很容易懂,就是怎样满足条件次数不超过同时不超时。 然后我就想把114514的最后一个4改成5就行了?然后就过了… 官方题解: #include <bits/stdc++.h> using namespace std; int main() { int a[200002]; char b[200002]; int n; cin >> n; char temp; for (int i原创 2020-12-29 20:42:25 · 224 阅读 · 0 评论 -
K GPA Involution
https://ac.nowcoder.com/acm/contest/9934/K 读完题就感觉要是结构体排序,你排a或者b都一样。 sort一遍之后,对于每个ai,可以知道你选不选aj(j<i)对于a是没有影响的,但是呢,如果你aj不选,bj就会选上,同时对于k>i的部分b是都选的,所以bj如果比bk大的话就会变成错误答案(bj比bk小就没事),所以我们i前面的部分都选a。 于是对于每个i的答案就是ai+i后面部分b的最大值,也就是ai+max(bi+1,bi+2…bn-1),这里去求max原创 2020-12-29 20:38:07 · 152 阅读 · 0 评论 -
H Bsq AK ZUCCPC
https://ac.nowcoder.com/acm/contest/9934/H 题解说是用贪心,然后我没用? AK和爆0算范围都是一样的,总人数-做对的人数=做错的人数。 首先算最大值,这个比较简单,就是数组中的最小值。 然后再算最小值,这个可以想成不同种的天气,例如1-3下雨,2-4下雪,只有重合的2-3才会既下雪又下雨,也就是说2-3才是有用的部分,其他的部分你再来任何天气也实现不了全下(全不下)。所以方法就是对数组遍历一般,从第二个开始如果和小于总人数,就说明放得下(可以做到不重叠),大于总人数原创 2020-12-29 20:28:52 · 114 阅读 · 0 评论 -
F Drinking Time II
https://ac.nowcoder.com/acm/contest/9934/F 很有意思的一道题~ 首先你管他配出来的鸡尾酒是什么品种,只要是鸡尾酒就算进去。然后可以得到1A+1B,1A+1C,2C,这三种配法。然后我们要从第一种开始入手,因为只有第一种配法会用到B。所以第一步就是把能用的B给用了。 然后再看第二步,这时候从第二种入手,因为剩下的酒中如果有A就只能用第二种方法配置,所以第二步就是把能用的A给用了。 最后一步当然就是能用多少C就把C用第三种方法配掉辣~ #include <bits原创 2020-12-29 20:22:56 · 119 阅读 · 0 评论 -
B Xjj‘s Touching Value
https://ac.nowcoder.com/acm/contest/9934/B 由于n<=30所以可以暴力枚举,纪录最大值就行…(我居然还求导算出极值点orz) #include <bits/stdc++.h> using namespace std; int gcd(int a, int b) { a = abs(a), b = abs(b); while (a % b != 0) { int temp = abs(a); a = b; b = temp % b;原创 2020-12-29 20:15:51 · 349 阅读 · 0 评论 -
A Young Man Don‘t Say Five
签到题,用string效果更佳~ #include <bits/stdc++.h> using namespace std; int main() { string s; cin >> s; for (int i = 0; i < s.length(); i++) { if (s[i] == '5') s[i] = '*'; } cout << s; return 0; }原创 2020-12-29 20:13:19 · 140 阅读 · 0 评论