news 2026/11/6 10:12:21

Div.3 CF 1114A题(排序,贪心)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Div.3 CF 1114A题(排序,贪心)

题目链接:https://codeforces.com/contest/2254/problem/A

题目大意:三人初始各有 `a、b、c` 个代币;若出现两人数量相同则结束,

否则最多者给最少者1个,重复直到有人数量相同,求进行的轮数。

题目思路:我们可以定义一个长度为三的数组,将a,b,c分别输入后进行排序,那么此时就会有v[0]<=v[1]<=v[2],如果说一开始v[0]==v[1]或者v[1]==v[2],那么直接输出0,否则我们看v[0]和v[2]分别到达v[1]需要多少代币,并且取最小值,这个最小值就是需要求的轮数了,因为在这个过程中v[0]在增大,v[2]在减小,只有v[1]是个定值

时间复杂度:O(T*3log3)

代码如下:

#include <bits/stdc++.h> using namespace std; #define endl "\n" using ll = long long; using ld = long double; /* https://codeforces.com/contest/2254/problem/A Div.3 CF 1114A题(排序,贪心) 题目大意:三人初始各有 `a、b、c` 个代币;若出现两人数量相同则结束, 否则最多者给最少者1个,重复直到有人数量相同,求进行的轮数。 题目思路:我们可以定义一个长度为三的数组,将a,b,c分别输入后进行排序,那么此时就会有v[0]<=v[1]<=v[2], 如果说一开始v[0]==v[1]或者v[1]==v[2],那么直接输出0,否则我们看v[0]和v[2]分别到达v[1]需要多少代币, 并且取最小值,这个最小值就是需要求的轮数了,因为在这个过程中v[0]在增大,v[2]在减小,只有v[1]是个定值 时间复杂度:O(T*3log3) */ void solve() { vector<int> v(3); for (int i = 0; i < 3; i++) { cin >> v[i]; } sort(v.begin(), v.end());//从小到大排序 int cnt = 0; if (v[0] == v[1] || v[1] == v[2])//任意一种情况相等均输出0 { cout << cnt << endl; return; } int mid1 = v[1] - v[0];//v[0]到达v[1] int mid2 = v[2] - v[1];//v[2]到达v[1] cnt = min(mid1, mid2);//取最小操作次数 cout << cnt << endl; } int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int T; cin >> T; while (T--) { solve(); } return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/6 9:31:23

解决AOSP12 Launcher3最近任务模块UI滑动异常问题

1. 问题现象与初步分析 在AOSP12的Launcher3开发过程中&#xff0c;当我尝试单独打包运行最近任务模块时&#xff0c;遇到了一个棘手的UI异常问题&#xff1a;在左右滑动最近任务列表时&#xff0c;最后一个应用的缩略图没有跟随其对应的item一起滑动&#xff0c;而是固定显示在…

作者头像 李华
网站建设 2026/11/6 9:24:36

OpenCode:AI编程代理的开发者优先工具

1. OpenCode&#xff1a;AI编程代理的新选择 作为一名长期在开发一线摸爬滚打的程序员&#xff0c;我一直在寻找能够真正提升编码效率的工具。最近深度体验了OpenCode这款开源AI编程代理后&#xff0c;不得不说它确实给我带来了不少惊喜。与市面上其他AI编程助手不同&#xff0…

作者头像 李华
网站建设 2026/11/6 9:21:27

深负反馈为何只降增益不拓带宽?共射上限截频的密勒电容解析

简介&#xff1a;这份文档面向电子信息类专业学生&#xff0c;聚焦北邮模电实验五「共射放大电路的频率特性与深负反馈的影响」&#xff0c;用于完成频率响应测试、波特图仿真与实测对比、负反馈深度分析等实验环节。包内为1个docx文件&#xff0c;压缩包约4.69MB&#xff0c;按…

作者头像 李华
网站建设 2026/11/6 9:20:22

ChainLink预言机心跳差异对DeFi项目的影响与优化

1. 项目背景与核心发现 最近在审计Morpheus项目时&#xff0c;我们发现了一个值得深入探讨的现象&#xff1a;ChainLink数据源存在显著的"心跳"差异。这个发现对于依赖预言机数据的DeFi项目具有重要参考价值——不同数据源之间的更新频率、响应延迟等指标差异&#x…

作者头像 李华
网站建设 2026/11/6 9:11:47

PL/0编译器如何用20行语义动作实现ELSE嵌套绑定

简介&#xff1a;本资源是广东工业大学编译原理课程配套实验项目&#xff0c;面向计算机专业本科生及编译技术初学者&#xff0c;聚焦PL/0教学编译器的深度改造实践&#xff0c;解决词法扩展、语法增强与语义适配等核心问题。压缩包共24个文件&#xff08;644KB&#xff09;&am…

作者头像 李华