Codeforces Round #827 (Div. 4)
A:给定三个数字,问是否存在1个数字是另外两个的和
void solve(){int a, b, c;cin >> a >> b >> c;if(a + b == c || a + c == b || b + c == a) puts("YES");else puts("NO");
}
B:给定一个数组,能否存在一个组合是单调上升的
思路:显然只要没有相同的两个数即可
void solve(){int n; cin >> n;set<int> s;rep(i, 0, n){int x; cin >> x;s.insert(x);}cout << (s.size() == n ? "YES" : "NO") << endl;
}
C:给定一个 8×8 的网格,其中 . 符号表示空,'R' 符号表示红色,'B' 符号表示蓝色。 每次可能水平地画一道红色,或者垂直地画一道蓝色,后面画的会覆盖前面画的,给出最终结果,问最后画的是什么颜色。
思路:很简单,只要行内有完整的一行,说明这一行是最后画的,如果行内没有那就是列了
void solve(){string s[8];int R = false;for(int i = 0; i < 8; i++) {cin >> s[i];if(s[i] == "RRRRRRRR") R = true;}if(R) cout << "R\n";else cout << "B\n";
}
D:给定一个长度为 n <= 2e5 的数组,数字大小不超过 1000。求最大的 i + j 满足 a[i] 与 a[j] 互质。
思路:考虑到数字大小不超过1000,且i显然越大越好,所以最后一次出现的位置我们才记录。然后暴力枚举这1000个数即可!
const int N = 1010;
int g[N][N];//n^2 枚举所有可能不可取,但我们发现数字大小不超过 1000,这也就意味着这个数组会有很多的重复元素,把这些重复的元素只保留下标最大的即可,这样就可以 1000^2 枚举了。
inline void solve(){int n; cin >> n;int v[1020] = {0};repn(i, 1, n){int x; cin >> x; v[x] = i;}int res = -1;for (int i = 1; i <= 1000; i ++ )for (int j = 1; j <= 1000; j ++ ){if(g[i][j] && v[i] && v[j]) res = max(res, v[i] + v[j]);}cout << res << endl;}int main(){IOS;int t; cin >> t;for(int i = 1; i <= 1000; i++) //打表看互质for(int j = 1; j <= 1000; j++)g[i][j] = (__gcd(i, j) == 1);while(t -- ){solve();}return 0;
}
E:给定一个长度为 n <= 2e5 的数组 a[i],表示每级台阶的高度。
给定 q<=2e5 个询问,每个询问给出 k 表示一次最多能跨越的高度,问从 0 开始最多能爬多高。
思路:显然只要小于k的位置我们是肯定都能跨越的,所以我们用一个数组维护当前位置前的最大高度,那么这个数组显然是单调不降的!那么就可以二分出位置了。然后直接计算一下前缀和即可
inline void solve(){int n, q; cin >> n >> q;repn(i, 1, n){cin >> s[i];mx[i] = max(s[i], 1ll * mx[i - 1]);//维护当前位置前最大的高度s[i] += s[i - 1];//前缀和}while(q -- ){int k; cin >> k;auto t = upper_bound(mx + 1, mx + n + 1, k) - mx - 1;cout << s[t] << ' ';}cout << endl;}
F:给定两个字符串 s, t,初始时全为空。
有 q<=2e5 次操作,每次操作选择其中一个串,给定 k <= 2e5,str,往后添加 k 个 str。并询问是否存在一种方式重排 s,t 的字符,使得 s 的字典序严格小于 t 的字典序。
思路:显然只要有s中加入了不是'a'的字符,就肯定比t小了,否则就得比较字符串长度大小了
inline void solve(){int n;cin >> n;ll aa = 0, bb = 0, sz1 = 0, sz2 = 0;while(n -- ) {int op, k;string s;cin >> op >> k >> s;if(op == 1) sz1 += k * s.size();else sz2 += k * s.size();for(int i = 0 ; s[i] ; i ++ )if(s[i] != 'a') {if(op == 1) aa = 1;//给s加上了, s输了else bb = 1;//t输了}if(bb) {puts("YES");continue;} else if(aa) {puts("NO");continue;} else {if(sz1 >= sz2) puts("NO");else puts("YES");}}
}
Codeforces Round #827 (Div. 4)相关推荐
- Codeforces Round #827 (Div. 4) A~G
比赛链接:Dashboard - Codeforces Round #827 (Div. 4) - Codeforces 目录 A Sum B Increasing C Stripes D. Cop ...
- Codeforces Round #827 (Div. 4) E. Scuza
Codeforces Round #827 (Div. 4) E. Scuza 前缀和 前缀和 前缀和 + 二分 二分 二分 Let's compute the prefix sums of the ...
- Codeforces Round #827 (Div. 4) 题解记录
Codeforces Round #827 (Div. 4) A 水题 #include<bits/stdc++.h> #define sc(x) scanf("%lld&quo ...
- 10.16打卡 Codeforces Round #827 (Div. 4) A~E
Dashboard - Codeforces Round #827 (Div. 4) - Codeforces 开摆F和G懒得写 A题 排个序就好了 /* ⣿⣿⣿⣿⣿⣿⡷⣯⢿⣿⣷⣻⢯⣿⡽⣻⢿⣿⣿⣿⣿⣿ ...
- Codeforces Round #827 (Div. 4) G. Orray
Problem - G - Codeforces 题意: 给定一个数列,让你重新排列这个数列,使得其前缀或最大 思路: 贪心策略就是找一个与pre或起来最大的值 重点是怎么写呢 感觉div4的题思路都 ...
- Codeforces Round #827 (Div. 4) G. Orray 解题报告
原题链接: Problem - G - Codeforces 题目描述: You are given an array aa consisting of nn nonnegative integers ...
- Codeforces Round #827 (Div. 4) D - F
D. Coprime time limit per test 3 seconds memory limit per test 256 megabytes input standard input ou ...
- Codeforces Round #827 (Div. 4)(A~G)(F已更新)
"爷爷,你关注的up主要更新拉!" 今天起开始CF/At不定期更新 A. Sum(暴力) 只需判断a,b,c是否为和关系即可 #include <bits/stdc++.h& ...
- Codeforces Round #827 (Div. 4)(A-G)
目录 A.Sum 1.题意 2.解题思路 3.Ac_code B.Increasing 1.题意 2.解题思路 3.Ac_code C.Stripes 1.题意 2.解题思路 3.Ac_code D. ...
- Codeforces Round #827 (Div. 4)A~G(模拟,暴力,前缀最大值,二分,二进制)
签到题A~C A #include<bits/stdc++.h> using namespace std; int n,w,x,y;int a[100005],b[100005]; int ...
最新文章
- [PA2014]Pakowanie
- 神经网络设计与分析之sin函数拟合分析
- Oracle Events事件
- vb串口 任意波特率_C#与单片机串口通讯,实现简单的计数功能
- 计算机二级2021辅导书,2021该如何准备计算机二级考试?
- 经典论文复现 | PyraNet:基于特征金字塔网络的人体姿态估计
- 戴尔为例 浅谈电子商务时代客户关系管理
- 七 内置锁 wait notify notifyall; 显示锁 ReentrantLock
- linux下简单的邮件配置
- HoloLens还太远 必应才是微软目前的重头戏
- 十六进制转二进制原理
- 个人陈述 计算机专业,研究生个人陈述范例,计算机专业
- ANT下载和配置 IDEA
- 导航标签html,导航标签
- BeanUtils.populate 的使用
- Ant Design of Vue Icon 图标列表
- ubuntu18.04下EnlightenGAN运行过程记录
- 麒麟处理器排行天梯图2022 麒麟处理器各型号排行2022
- 华为鸿蒙有可能成功吗 (by quqi99)
- 链接数据库明明有值,但是取到的是空