首页 > 其他分享 >10.22 解题报告

10.22 解题报告

时间:2022-10-25 09:58:11浏览次数:86  
标签:10.22 le log 报告 复杂度 元素 解题 最大值

T1

用时:约 \(30\) min

首先不难发现,若干个人组成的集合 \(A\) 若满足条件的话,当且仅当对于每一个元素 \(A_i\),都有 \(b_{A_i}\le \sum a_{A_j}-a_{A_i}\),也即 \(b_{A_i}+a_{A_i}\le \sum a_{A_j}\)。

所以可以考虑枚举左边的 \(a_i+b_i\) 的最大值,贪心的去找 \(a\) 值最大的,计数,取 \(\min\) 即可,复杂度 \(O(n^2\log n)\) 可以得到 \(60\) pts。

发现上面的贪心找 \(a\) 最大的方案每次都要排序,非常的浪费,考虑能不能用一些数据结构来进行维护。

考虑使用 STL 中的 multiset 来实现,初始将所有元素插入,枚举 \(a_i+b_i\) 的最大值时需要实现单个元素的删除,此时判断一下当前这个 \(a_i\) 在上一次有没有被选中,如果有,就再加一个未选择的最大值进去,否则不管,再来判断是否符合条件。

如果符合,一直减掉最大的选中的元素,直至不符合,此时更新答案。

如果不符合,此次答案一定不会更优,直接忽略。

注意到 multiset 中的指针整体是单调移动的,所以单次操作复杂度均摊 \(O(\log n)\),总复杂度是 \(O(n \log n)\)。

标签:10.22,le,log,报告,复杂度,元素,解题,最大值
From: https://www.cnblogs.com/wapmhac/p/16823877.html

相关文章

  • 10.24集训解题报告
    T1方程(\(equation\))题面:给定\(4\)个正整数\(a\),\(b\),\(c\),\(d\),并且保证\(c\)\(×\)\(d\)\(≤\)\(10^6\),请你求出有多少组正整数对\((x,y)\)满足如......
  • 10.23解题报告
    T1用时:\(20\)min要求统计数组\(a\)中有序三元组\((x,y,z)\)的个数,满足\(\gcd(a_x,a_y)=a_z\),直接枚举\(x\),\(y\),将\(x\)后面的加入一个map中,统计答案即可。#......
  • 10.24解题报告
    T1用时:约\(100\)min这个题用的时间最多,主要原因还是想多了,应该注意多观察一下题目性质:题目要求求出这个式子的正整数解个数:\(\frac{a}{x}+\frac{b}{c}=\frac{d}{y}\)......
  • 10.22
    idea报错  解决方法file-settings-删掉全部图中标注处  ......
  • 2022.10.22
    总算能抽出点时间出去玩玩了睡完午觉,大概下午三点起床,又磨磨蹭蹭到4点。看了看等车来和地图,决定先坐15路到官渡桥东,然后坐5路车直达等车等到4点半,又坐车坐了一个多小时,大......
  • Python实验报告(第7周)
    实验7:面向对象程序设计一、实验目的和要求1、了解面向对象的基本概念(对象、类、构造方法);2、学会类的定义和使用;3、掌握属性的创建和修改;4、掌握继承的基本语法。 ......
  • 基于ssm的实验报告管理系统的设计与实现-计算机毕业设计源码+LW文档
    摘要:BS的实验报告管理系统是针对目前大学推广与交流的实际需求,从实际工作出发,对过去的大学推广与交流平台存在的问题进行分析,完善用户的使用体会。采用计算机系统来管理信息......
  • 10.22-10.23图论总结
    虽然刷的大部分都是水题,但也是花费时间了的。所以还是总结一下吧。3239:最短路求\(1\)到\(n\)的最短路。思路:直接单源最短路模板。点击查看代码#include<iostream>#i......
  • 【闲话】2022.10.22
    闲话今天到了酒店后的第一场考试完全不会,寄了而且这个VSCode比考试题还寄键盘手感还凑合着毕竟之前打了两把雀食磨合了一下打了三发搜,润了。骗分的事嘛,要分,不磕碜(((......
  • Python第七章实验报告
    一.实验名称:《零基础学Python》第7章面向对象程序设计二.实验环境:IDLEShell3.9.7三.实验内容:5道实例、4道实战四.实验过程:实例01创建大雁类并定义飞行方法点......