当前位置: 首页 > news >正文

Codeforces Round 975 (Div. 2) C. Cards Partition

题目链接:题目

大意:

给出若干种卡片,每种卡片有一定数量,你可以加入不超过 k k k张任意已给出种类的卡片,使得它们可以被分成若干组,每组容量一定,且同组内不存在相同种类的卡片,求出最大能成立的容量。

思路:

这题的两个关键点在于,一找到可以分配成功的条件,二正确处理各种变量的关系。
这个条件乍一看有点复杂,单看每一组不知道要装什么数字,那么先关注一些必要条件,首先所有卡片的总和要整除每组的容量,并且每种卡片的卡牌数量都不能超过组数,否则由于抽屉原理,肯定会存在有卡片没地方装,被迫和自己兄弟挤在一起。这时候你发现这些就是充分条件,想象你把每种卡片尽可能地放在不同组中,一层层地放满后,一定能够成立,不会有冲突。
接着我们得到条件就是 s u m % l = 0 sum\%l=0 sum%l=0且单种卡片最大数量 m a x < = s u m / l max<=sum/l max<=sum/l,如何把 k k k加入其中呢?请看代码。
(一开始不敢写是因为以为卡片数量总和超过long long,后来发现最多可能也就到1e16,long long是9e18)

代码:

#include <bits/stdc++.h>
using namespace std;#define int long long
#define MOD 1000000007
#define fi first
#define se second
#define pii pair<int,int>
#define vec vectorvoid solve(){int n, k;cin >> n >> k;vec<int> a(n + 1);for(int i = 1; i <= n; i++){cin >> a[i];}int mx = *max_element(a.begin(), a.end());int sum = accumulate(a.begin(), a.end(), 0ll);int ans = 0;for(int l = n; l >= 1; l--){if(sum % l == 0 && mx * l <= sum + (k / l) * l){ans = l;break;}if(l - (sum % l) <= k && mx * l <= (sum + l - (sum % l)) + ((k - (l - (sum % l))) / l) * l){ans = l;break;}}cout << ans << '\n';
}signed main(){ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int t=1;cin >> t;while(t--){solve();}return 0;
}   

相关文章:

Codeforces Round 975 (Div. 2) C. Cards Partition

题目链接&#xff1a;题目 大意&#xff1a; 给出若干种卡片&#xff0c;每种卡片有一定数量&#xff0c;你可以加入不超过 k k k张任意已给出种类的卡片&#xff0c;使得它们可以被分成若干组&#xff0c;每组容量一定&#xff0c;且同组内不存在相同种类的卡片&#xff0c;…...

Qt 首次配置 Qt Creator 14.01 for Python

前言&#xff1a; 如何用QT实现Python的配置的交互界面。本文从0开始&#xff0c;进行实践的介绍。 在上一节里面&#xff0c;我们做了社区版本的配置&#xff1a; https://blog.csdn.net/yellow_hill/article/details/142597007?spm1001.2014.3001.5501 这一节&#xff0…...

【python】代码发布前检查- vulture:查找死代码

分析Python项目中未被使用的.py文件 Vulture&#xff1a; Vulture是一个专门用于查找Python代码中的死代码的工具。它可以识别未使用的代码&#xff0c;包括未导入的模块。 安装&#xff1a; pip install vulture使用&#xff1a; vulture your_project_directory...

Yolov10环境配置

参考文章&#xff1a;1.YOLOv10超详细环境搭建以及模型训练&#xff08;GPU版本&#xff09;-CSDN博客 2.Windows下安装pytorch教程(下载.whl的方式)_pytorch whl-CSDN博客 安装步骤和文件夹顺序一样 1.安装CUDA和cuDNN 1.1安装CUDA 1.1.1查看当前你的电脑显卡支持的最高CUD…...

iOS 提取图片的主题色,并支持灵活提取

遇到一个需求&#xff0c;要提取图片中的色调&#xff0c;但还有一点特殊的需求&#xff0c;就是不是提取颜色最多的色调&#xff0c;也不是平均的色调&#xff0c;是图片中偏暗的色调 这就需要我们动态的调整我们提取的算法&#xff0c; 下面就看代码 dispatch_async(dispatch…...

语雀笔记使用记录

初识语雀 语雀官网 语雀帮助 教你如何使用语雀提高效率 语雀极简使用指南 | 10个常用技巧&#xff0c;带你快速入门 语雀安装 语雀下载地址 根据自己的pc平台下载对应的版本&#xff0c;然后傻瓜式安装即可 初试语雀 语雀为云笔记&#xff0c;并且其特性比较符合我个人的需求…...

安全教育培训小程序系统开发制作方案

安全教育培训小程序系统是为了提高公众的安全意识&#xff0c;普及安全知识&#xff0c;通过微信小程序的方式提供安全教育培训服务&#xff0c;帮助用户了解并掌握必要的安全防范措施。 一、目标用户 企业员工&#xff1a;各岗位员工&#xff0c;特别是IT部门、财务、行政等对…...

【面试题】软件测试实习(含答案)

软件测试实习常见面试题&#xff0c;主要是功能测试相关的基础问题 目录 一、软件测试基础 1、介绍一下你最近的项目&#xff0c;以及工作职责 2、软件项目的测试流程? 3、黑盒测试与白盒测试的区别? 4、黑盒测试常见的设计方法?怎么理解等价类方法和边界值方法 1&…...

后端回写前端日期格式化

问题 不进行格式化处理&#xff0c;就会导致传递的字符串很奇怪 解决方案 注解&#xff08;字段&#xff09; <dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId><version>2.9.2</…...

微信小程序开发系列之-在微信小程序中使用云开发

微信小程序开发系列之-在微信小程序中使用云开发 随着微信小程序的快速发展&#xff0c;云开发成为了一个强大的工具&#xff0c;它提供了无需搭建和维护服务器的便捷环境。云开发允许开发者直接使用云数据库、存储和云函数等服务&#xff0c;大大简化了小程序的开发流程。在本…...

《论文阅读》 用于产生移情反应的迭代联想记忆模型 ACL2024

《论文阅读》 用于产生移情反应的迭代联想记忆模型 ACL2024 前言简介任务定义模型架构Encoding Dialogue InformationCapturing Associated InformationPredicting Emotion and Generating Response损失函数问题前言 亲身阅读感受分享,细节画图解释,再也不用担心看不懂论文啦…...

零基础教你如何开发webman应用插件

0X03 应用目录机构 plugin/ └── dingdingtalk │ ├── api │ │ └── Install.php │ ├── app │ │ ├── controller │ │ │ └── IndexController.php │ │ ├── functions.php │ │ ├── middleware │ │ ├── mo…...

AVL树(平衡二叉树)的介绍以及相关构建

欢迎光临 &#xff1a; 羑悻的小杀马特-CSDN博客 目录 一AVL树的介绍&#xff1a; 二AVL树的实现&#xff1a; 1结构框架&#xff1a; 2节点的插入&#xff1a; 旋转&#xff1a; 21左单旋&#xff1a; 2.1.1左单旋介绍及步骤&#xff1a; 2.1.2左单旋代码实…...

SAP员工士气因重组受到打击

SAP在2024年经历了员工士气显著下降的局面&#xff0c;特别是在国内员工中。这一变化与公司在1月宣布的重组计划紧密相关。根据彭博社的报道&#xff0c;6月进行的一项调查显示&#xff0c;SAP约16,500名员工中&#xff0c;有51%愿意接受竞争对手的类似职位&#xff0c;而对公司…...

Unity3D 中构建行为树插件详解

前言 在Unity3D中&#xff0c;行为树&#xff08;Behavior Tree&#xff09;是一种用于游戏AI设计和实现的高级工具&#xff0c;它提供了一种结构化和模块化的方式来管理游戏实体的行为。行为树通过树状结构组织了一系列节点&#xff0c;每个节点代表了一个决策或动作。这种结…...

数学符号练习-函数连续性与导数

前言 其实主要的目的是可以在文本中输出各种数学符号&#xff0c;便于以后用到的时候有现成的例子拿过来抄~~ 函数的连续性 设函数 y f ( x ) yf(x) yf(x)在点 x 0 x_0 x0​的某邻域内有定义,如果当自变量的改变 Δ x Δx Δx趋近于0时&#xff0c;相应函数的改变量也趋近于…...

笔记本维修与拆解(一)

清灰&#xff1a; 拆螺丝: 拔掉电池供电&#xff1a; 多按几次开机键&#xff0c;放电&#xff1a; 涂抹硅胶的时候&#xff0c;千万不要涂很多&#xff0c;溢出CPU&#xff0c;如果硅胶溢到焊盘上去的话很容易热胀冷缩短路 【联想拯救者Y9000P和R9000P最简单清灰教程&#xf…...

【JavaSE系列】IO流

目录 前言 一、IO流概述 二、IO流体系结构 三、File相关的流 1. FileInputStream 2. FileOutputStream 3. FileReader 4. FileWriter 四、缓冲流 五、转换流 1. InputStreamReader 2. OutputStreamWriter 六、数据流 七、对象流 八、打印流 九、标准输入输出流…...

深入探讨在线教育系统源码:搭建知识付费平台实战方案详解

知识付费平台是软件开发行业内炙手可热的项目&#xff0c;其受众群体非常广&#xff0c;也是很多小伙伴提问比较多的&#xff0c;今天小编将从在线教育系统源码开始&#xff0c;为大家讲解一个知识付费平台的搭建开发实战方案。 一、系统架构设计 搭建在线教育系统需考虑以下几…...

前端全屏模式切换

前端全屏模式切换 const isBigScreen ref(false) const handleScreen () > {if (isBigScreen.value) {document.exitFullscreen()isBigScreen.value false} else {isBigScreen.value truedocument.documentElement.requestFullscreen() // 请求全屏模式} }...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

内存分配函数malloc kmalloc vmalloc

内存分配函数malloc kmalloc vmalloc malloc实现步骤: 1)请求大小调整:首先,malloc 需要调整用户请求的大小,以适应内部数据结构(例如,可能需要存储额外的元数据)。通常,这包括对齐调整,确保分配的内存地址满足特定硬件要求(如对齐到8字节或16字节边界)。 2)空闲…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误

HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误&#xff0c;它们的含义、原因和解决方法都有显著区别。以下是详细对比&#xff1a; 1. HTTP 406 (Not Acceptable) 含义&#xff1a; 客户端请求的内容类型与服务器支持的内容类型不匹…...

visual studio 2022更改主题为深色

visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中&#xff0c;选择 环境 -> 常规 &#xff0c;将其中的颜色主题改成深色 点击确定&#xff0c;更改完成...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制&#xff08;1&#xff09;三次握手①握手过程②对握手过程的理解 &#xff08;2&#xff09;四次挥手&#xff08;3&#xff09;握手和挥手的触发&#xff08;4&#xff09;状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

网络编程(UDP编程)

思维导图 UDP基础编程&#xff08;单播&#xff09; 1.流程图 服务器&#xff1a;短信的接收方 创建套接字 (socket)-----------------------------------------》有手机指定网络信息-----------------------------------------------》有号码绑定套接字 (bind)--------------…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...

算法:模拟

1.替换所有的问号 1576. 替换所有的问号 - 力扣&#xff08;LeetCode&#xff09; ​遍历字符串​&#xff1a;通过外层循环逐一检查每个字符。​遇到 ? 时处理​&#xff1a; 内层循环遍历小写字母&#xff08;a 到 z&#xff09;。对每个字母检查是否满足&#xff1a; ​与…...

LangChain知识库管理后端接口:数据库操作详解—— 构建本地知识库系统的基础《二》

这段 Python 代码是一个完整的 知识库数据库操作模块&#xff0c;用于对本地知识库系统中的知识库进行增删改查&#xff08;CRUD&#xff09;操作。它基于 SQLAlchemy ORM 框架 和一个自定义的装饰器 with_session 实现数据库会话管理。 &#x1f4d8; 一、整体功能概述 该模块…...