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. 分析: 一眼看 ...
随机推荐
- Spring Cloud 整合
前言 玩SpringCloud之前最好懂SpringBoot,别搞撑死骆驼的事.Servlet整一下变成Spring:SSM封装.加入东西就变为SpringBoot:SpringBoot再封装.加入东 ...
- 什么是Session;request.getSession().setAttribute()
Session:会话控制,是服务器为了保存用户状态而创建的一个特殊的对象.=>用于存储信息的一个对象 当我们在服务端使用session时,首先要获取session,下面这个图就对服务器获取ses ...
- 使用 PyTorch 完全分片数据并行技术加速大模型训练
本文,我们将了解如何基于 PyTorch 最新的 完全分片数据并行 (Fully Sharded Data Parallel,FSDP) 功能用 Accelerate 库来训练大模型. 动机 随着机器 ...
- 基于win11的Emby、Playnite搭建家庭影音娱乐方案
0. 概述 0.1 Emby效果 0.2 playnite效果 0.3 软件清单及教程 流媒体:Emby (分Server端.安卓端.安卓TV端.iOS端,PC最好使用网页端) 电影/电视剧/动画:找 ...
- [CF1830D] Mex Tree
题目描述 You are given a tree with $ n $ nodes. For each node, you either color it in $ 0 $ or $ 1 $ . T ...
- CPU的组成 运算器与控制器
计算机结构 CPU结构
- All in One, 快速搭建端到端可观测体系
本文分享自华为云社区<All in One, 快速搭建端到端可观测体系>,作者:王磊. 随着云原生技术的应用,可观测成为云服务的主角,应用程序的部署密度及变化频率较传统环境有着巨大的变化, ...
- hszxoj ATM [tarjan]
hszxoj ATM 题目描述:\(Siruseri\) 城中的道路都是单向的.不同的道路由路口连接.按照法律的规定, 在每个路口都设立了一个 \(Siruseri\) 银行的 \(ATM\) 取款机 ...
- 数字孪生技术与VR技术的结合会为我们带来什么?
数字孪生技术与虚拟现实(VR)技术的结合为我们打开了全新的可能性和机遇.这个强大的联合为各个领域带来了巨大的影响和创新. 首先,数字孪生技术与VR技术的结合可以为设计和规划过程提供更直观.身临其境的体 ...
- 解决 IDEA 报错ERROR:JAVA: 无效的源发行版: 11
解决 IDEA 报错ERROR:JAVA: 无效的源发行版: 11 原因 一般都是创建工程的时候 一路next 默认选择了 Java Version 11, 而本地的jdk版本是 8 解决 File ...