AtCoder Regular Contest 123 (A~C 三道好题)
比赛链接:Here
A - Arithmetic Sequence (good)
注意细节
int main() {
cin.tie(nullptr)->sync_with_stdio(false);
ll a, b, c;
cin >> a >> b >> c;
ll x = 2 * b - a - c;
ll k = (x >= 0 ? 0 : (1 - x) / 2);
ll ans = x + 3 * k;
cout << ans << endl;
}
B - Increasing Triples (good)
大根堆优先队列
using PQ = priority_queue<int, vector<int>, greater<int>>;
int main() {
cin.tie(nullptr)->sync_with_stdio(false);
int n;
cin >> n;
PQ A, B, C;
for (int i = 0, x; i < n; ++i) {cin >> x; A.push(x);}
for (int i = 0, x; i < n; ++i) {cin >> x; B.push(x);}
for (int i = 0, x; i < n; ++i) {cin >> x; C.push(x);}
int a, b;
int ans = 0;
while (!A.empty()) {
a = A.top(); A.pop();
while (!B.empty() and B.top() <= a)B.pop();
if (B.empty() )break;
b = B.top(); B.pop();
while (!C.empty() and C.top() <= b)C.pop();
if (C.empty()) break;
C.pop();
++ans;
}
cout << ans ;
}
C - 1, 2, 3 - Decomposition (good)
给你一个数,让你分解成不含0的四进制之和,求最少分解成多少个?
从高位到低位思考,每一位有两种情况,一种借一给低位,另一种不借。含高位构造数数目小于等于含低位的构造数数目.
int solve(ll n) {
if (n == 0)return 0;
if (n < 10)return (n - 1) / 3 + 1;
ll mi = 0;
ll pi = n, pa, pb;
pb = solve(pi / 10 - 1);
pa = solve(pi / 10);
if (pa > pi % 10)return max(pb, (pi % 10 + 10 - 1) / 3 + 1);
return min(max(pa, (pi % 10 - 1) / 3 + 1), max(pb, (pi % 10 + 10 - 1) / 3 + 1));
}
int main() {
cin.tie(nullptr)->sync_with_stdio(false);
int _; for (cin >> _; _--;) {
ll n; cin >> n;
cout << solve(n) << '\n';
}
}
AtCoder Regular Contest 123 (A~C 三道好题)的更多相关文章
- Atcoder Regular Contest 123 题解
u1s1 我是真的不知道为什么现场这么多人切了 D,感觉 D 对思维要求显然要高于其他 300+ 人切掉的 D 吧(也有可能是 Atc 用户整体水平提升了?) A 开 幕 雷 击(这题似乎 wjz 交 ...
- AtCoder Regular Contest 061
AtCoder Regular Contest 061 C.Many Formulas 题意 给长度不超过\(10\)且由\(0\)到\(9\)数字组成的串S. 可以在两数字间放\(+\)号. 求所有 ...
- AtCoder Regular Contest 094 (ARC094) CDE题解
原文链接http://www.cnblogs.com/zhouzhendong/p/8735114.html $AtCoder\ Regular\ Contest\ 094(ARC094)\ CDE$ ...
- AtCoder Regular Contest 094
AtCoder Regular Contest 094 C - Same Integers 题意: 给定\(a,b,c\)三个数,可以进行两个操作:1.把一个数+2:2.把任意两个数+1.求最少需要几 ...
- AtCoder Regular Contest 102
AtCoder Regular Contest 102 C - Triangular Relationship 题意: 给出n,k求有多少个不大于n的三元组,使其中两两数字的和都是k的倍数,数字可以重 ...
- AtCoder Regular Contest 096
AtCoder Regular Contest 096 C - Many Medians 题意: 有A,B两种匹萨和三种购买方案,买一个A,买一个B,买半个A和半个B,花费分别为a,b,c. 求买X个 ...
- AtCoder Regular Contest 092
AtCoder Regular Contest 092 C - 2D Plane 2N Points 题意: 二维平面上给了\(2N\)个点,其中\(N\)个是\(A\)类点,\(N\)个是\(B\) ...
- AtCoder Regular Contest 093
AtCoder Regular Contest 093 C - Traveling Plan 题意: 给定n个点,求出删去i号点时,按顺序从起点到一号点走到n号点最后回到起点所走的路程是多少. \(n ...
- AtCoder Regular Contest 095
AtCoder Regular Contest 095 C - Many Medians 题意: 给出n个数,求出去掉第i个数之后所有数的中位数,保证n是偶数. \(n\le 200000\) 分析: ...
- AtCoder Regular Contest 097
AtCoder Regular Contest 097 C - K-th Substring 题意: 求一个长度小于等于5000的字符串的第K小子串,相同子串算一个. K<=5. 分析: 一眼看 ...
随机推荐
- 热烈祝贺:薪火数据(https://www.datainside.com.cn 数据中心低代码搭建平台)参加教育博览会取得圆满成功。
- kotlin+springboot入门级别教程,教你如何用kotlin和springboot搭建http
先打开idea,或者用springboot官网.阿里云那边都行 然后点击新建项目,spring Initializr,我们都知道,springboot是支持kotlin的,除非你是kotlin1.3之 ...
- 生成模型的两大代表:VAE和GAN
生成模型 给定数据集,希望生成模型产生与训练集同分布的新样本.对于训练数据服从\(p_{data}(x)\):对于产生样本服从\(p_{model}(x)\).希望学到一个模型\(p_{model}( ...
- idea常用快捷键使用
idea常用快捷键使用:1.shift+u 大小写2.alt+shift+u 驼峰命名(插件:CamelCase)3.ctrl+alt 点击跳转实现类4.ctrl 点击跳转接口类5.Alt+F7 查看 ...
- 一篇文章带你掌握性能测试工具——Jmeter
一篇文章带你掌握性能测试工具--Jmeter 在目前的中大型企业中,仅仅进行功能测试已经不足以满足企业的需求,在重大客户基数下性能测试将会直接影响到用户体验 所以在这篇文章中我们将会学习性能测试的相关 ...
- 【matlab混沌理论】1.4.双摆杆的不同参数模型
双摆杆运动模型.初始条件的微小差异,会导致千差万别的运动现象,这是混沌理论重要体现.主要考虑初始条件有两摆杆长度.质量.初始摆杆角度.重力加速度. input: % 参数定义 L1 = 1; % 第一 ...
- Head First Java学习:第七章-继承和多态
第七章:继承和多态 1. 覆盖(override) 覆盖的意思是由子类重新定义继承下来的方法,以改变或延伸此方法的行为. 2. 继承(extends) 类的成员:实例变量+方法 实例变量无法覆盖是因为 ...
- Celery周期性任务定义beat
通过celery beat可以使用周期性任务的定义. https://docs.celeryq.dev/en/stable/userguide/periodic-tasks.html 周期性任务bea ...
- 封装Detours用于Python中x64函数hook
Detours 代码仓库: https://github.com/microsoft/Detours x64写一个任意地址hook要比x86麻烦的多,所以这里直接封装框架来用于x64的hook. De ...
- thymeleaf使用
thymeleaf使用 1.依赖 <parent> <artifactId>spring-boot-starter-parent</artifactId> < ...