Educational Codeforces Round 172 (Rated for Div. 2)

news/2024/12/3 0:48:05/文章来源:https://www.cnblogs.com/mingzi123/p/18583152

A. Greedy Monocarp

 

 

题目大意:给你n个箱子,每个箱子有ai枚硬币,现在有一个人会进行若干次操作:每次拿走硬币最多的箱子,直到他的硬币总和大于等于k。

你可以在一些箱子内增加一些硬币,使得这个人拿走的硬币数量最小,问你最少需要加多少枚硬币。

 

思路:

看数据范围,ai<=k,那么可以从排序,然后令sum从大到小依次加上ai,直到加上当前ai时大于k,那么答案就是sum+ai-k。

#include<bits/stdc++.h>
using namespace std;
bool cmp(int x,int y)
{return x>y;
}
void solve()
{int n,k,sum=0;cin>>n>>k;int a[100]={0};for(int i=1;i<=n;i++)cin>>a[i];sort(a+1,a+1+n,cmp);for(int i=1;i<=n;i++){if(sum+a[i]==k){sum+=a[i];break;}if(sum+a[i]>k){cout<<k-sum<<"\n";return;}elsesum+=a[i];}cout<<k-sum<<"\n";
}
int main()
{int t;cin>>t;while(t--)solve();
}

 

 

B. Game with Colored Marbles

 

 

题目大意:

有n颗弹珠,第i颗弹珠的颜色为ai,Alice和Bob每次操作可以拿走一颗弹珠,Alice先手,Alice每有一个颜色不同的弹珠就会加1分,如果这个颜色是Bob没有的,那么再加1分。

Alice希望她的分数最大化,Bob希望Alice的分数最小化,Alice的最大分数是多少。

 

思路:

首先肯定先拿走只出现过一次颜色的弹珠,然后再去拿重复出现过的弹珠。

因为Bob拿走一个只出现过一次颜色的弹珠,就会让Alice的分数少加2分,拿重复出现过的,只会让Alice的分数少加1分,所以用哈希统计一下即可。

#include<bits/stdc++.h>
using namespace std;
void solve()
{int n;cin>>n;int a[1200]={0},cnt=0,ans=0;map<int,int> g;for(int i=1;i<=n;i++)cin>>a[i],g[a[i]]++;for(auto i:g){if(i.second==1)cnt++;elseans++;}ans+=((cnt+1)/2)*2;cnt=0;cout<<ans<<"\n";
}
int main()
{int t;cin>>t;while(t--)solve();
}

 

C. Competitive Fishing

 

题目大意:

给你一个01字符串,0为Alice钓的鱼,1为Bob钓的鱼,你可以将这个01串分为m组,每组必须有一条鱼,假如某个人在第i组钓的鱼有x条,那么这个人的分数就会加(i-1)*x,问至少需要分多少组,使得Bob的分数超过Alice至少k分,如果无法满足,输出-1。

 

思路:

待补。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/845704.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HCIP-15 BGP路由反射器

为解决IBGP水平分割问题可以采用全互联的IBGP连接,但是该方式需要维护大量的IBGP对等体关系,为此可以部署RR来减少IBGP对等体关系的数量。 RR的设定打破了IBGP水平分割规则,为了防止路由环路产生,BGP增加了Originator_ID、Cluster_ID两个路径属性。目录中转AS中的IBGP问题路…

财务知识-期末常用会计分录

财务知识-期末常用会计分录

Rancher容器云管理平台

Rancher容器云管理平台 一、主机硬件说明序号 硬件 操作及内核1 CPU 4 Memory 4G Disk 100G CentOS72 CPU 4 Memory 4G Disk 100G CentOS73 CPU 4 Memory 4G Disk 100G CentOS74 CPU 4 Memory 4G Disk 100G CentOS7二、主机配置 2.1 主机名 # hostnamectl set-hostname rancher…

《痞子衡嵌入式半月刊》 第 112 期

痞子衡嵌入式半月刊: 第 112 期这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,投稿或推荐你知道的嵌入式那些事儿。 上期回顾 :《…

学习高校课程-系统设计与分析-优化设计(lec8)

将用例行为分发到类 对于每个事件用例流:确定分析类 ,将用例职责分配给分析类 ,在交互图中对分析类交互进行建模描述职责 做什么:创建对象,执行计算,对其他对象的初始化操作,控制和协调工作...... 知道什么:关于私有封装数据,关于相关对象,关于他可以推导和计算的事物…

使用CloudDrive 将网盘挂载本地(网盘本地化,超简单)

使用CloudDrive 将网盘挂载本地(网盘本地化,超简单) 创建时间:20241122 一、介绍 免费的,可以将两个网盘挂载在本地。可实现不用登陆即可 下载。很好用。 之前还有一个alist+RaiDrive 可以免费挂载很多(我觉得没必要懒得搞没搞那个,这个也够用了。感兴趣的可以去试试那…

manim边做边学--曲面

Surface类是Manim中专为创建和操控复杂的三维表面而打造的。 在实际应用中,无论是创建数学教学中的几何模型,还是模拟物理现象中的曲面变化,甚至是构建复杂的动画场景中的三维元素,Surface类都能以其强大的功能和灵活性满足我们的需求。 通过Surface类的参数和方法,我们可…

mac通过网线连接主机(fnOS)

一、mac端 mac是typec的,用了个转接头+网线直连主机,初始化的时候跟下面一致,默认都是自动的点击详细信息,配置IPv4选择使用DHCP二、主机端 主机端是最麻烦的,刚开始的时候怎么也找不到网卡,ifconfg敲了很多遍,最后发现是fnOS没有装驱动。。。 root@server:~# sudo lshw…

05_VIM编辑器

VIM编辑器 一、VIM编辑器的工作模式命令行模式 用户刚刚启动 vi/vim,便进入了命令模式。控制屏幕光标的移动,字符、字或行的删除,移动、复制某区域及进入插入模式,或者到末行模式插入模式 只有在插入模式下才可以做文本输入,按“ESC”键可回到命令行模式末行模式 在命令模…

HTTP协议基础

总结了HTTP协议的一些基础知识。HTTP协议基础 一.定义 HTTP协议(HyperText Transfer Protocol),超文本传输协议,它是一种客户端(如网页浏览器)和服务器端(如网站服务器)之间进行通信、请求与响应数据的规则集合。通过 HTTP 协议,客户端可以向服务器发起获取网页、图片…

Power Automate 获取通讯组的成员

前言最近,想要看看某个Group里都有哪些人正文在Power Automate里可以用Office 365 Groups这个连接器里的操作,先根据邮件地址获取到Group,然后用Group Id获取Group即可获取到Group members的截图获取结果的JSON[{"@odata.type": "#microsoft.graph.user"…