首页 > 其他分享 >【MX-S3-T4】「FeOI Round 1」醒餞の鳥 (feat. Feryquitous)

【MX-S3-T4】「FeOI Round 1」醒餞の鳥 (feat. Feryquitous)

时间:2024-08-18 12:37:57浏览次数:15  
标签:S3 T4 Feryquitous 最大值 枚举 做法 排序 复杂度 进行

题目要求对 \(998244353\) 进行去模,所以二分之类的实数做法是不可行的。

条件等价于对于每一个学科 \(k\),求解下式的最大值:

\[\max\limits_{i,j,l,a_{j,k}\lt a_{i,k},a_{j,l}\gt a_{i,l}}\frac{a_{j,l}-a_{i,l}}{a_{j,l}-a_{i,l}+a_{i,k}-a_{j,k}} \]


我们接下来介绍两个做法:

  • \(O(n^2m)\)

这个式子是 \(\frac{p}{p+q}\) 的形式,可以考虑枚举 \((i,j,k)\) 这是可以确定 \(q\) 的,接下来我们需要求解 \(p\) 的最大值,而 \(p\) 的最大值只和 \((i,j,l)\) 相关。所以我们枚举 \((i,j)\),处理使得 \(p\) 最大的 \(l\),然后对于每一个 \(k\) 进行对应限制即可,当然我们需要保存形如 \((p,q)\) 的一个限制,因为取了逆元后无法进行比较。

枚举 \(i,j\) 复杂度 \(O(n^2)\),处理对应的 \(l\) 极值和枚举 \(k\) 都是 \(O(m)\),时间复杂度 \(O(n^2m)\)。

  • \(O(nm^2)\)

这个做法比较有意思。

考虑到原条件等价于,按照 \(a_{*,k}\) 进行排序和按照加权排序的排名(并列算相同)相同。

又由于我们在使得上式最大的情况下,一定是给 \(k\) 这个学科赋 \(X\),给另一个学科赋 \(1-X\),那么我们枚举 \(k,l\),将他们按照 \(a_{*,k}\) 进行排序。将 \(a_{*,k}\) 相等的看作一类,那么我们只需要保证相邻两类在按照上述赋值的情况下依旧保持偏序关系。同样用上一个做法的 \(p,q\) 进行阐述,此时 \(q\) 已经确定,我们只需要使得 \(p\) 最大即可,那么取出两个类中的极值即可。

枚举 \(k\),进行排序(不是关键复杂度),然后枚举 \(l\),之前的复杂度为 \(O(m^2)\),对于每个相邻的学生都进行比较,则时间复杂度 \(O(nm^2)\)。


两个做法都出来了,最后只需要进行根号分治即可。

代码咕咕咕。

标签:S3,T4,Feryquitous,最大值,枚举,做法,排序,复杂度,进行
From: https://www.cnblogs.com/xcyyyyyy/p/18365499

相关文章

  • Study Plan For Algorithms - Part4
    1.整数反转题目链接:https://leetcode.cn/problems/reverse-integer/给定一个32位的有符号整数x,返回将x中的数字部分反转后的结果。如果反转后整数超过32位的有符号整数的范围[−2^31,2^31−1],就返回0。classSolution:defreverse(self,x:int)->int:......
  • S3C2410关于中断部分中文手册的解释
    S3C2410中文手册关于中断请求寄存器的描述模糊不清,让人难以理解,我将对下面这段文字进行一个解释。一、中断请求寄存器的概念在S3C2410处理器中,有两个与中断请求相关的寄存器:源请求寄存器(SRCPND):这个寄存器记录所有中断源发出的中断请求。也就是说,当任何一个中断源请求服务......
  • P10886 【MX-S3-T2】「FeOI Round 1」Journey 题解
    我们肯定是要先求出来一个位置被加的次数,然后和权值乘一下就行。对于一个位置\(i\),右端点\(b\)肯定是随便选,一共\(n-i+1\)种情况。再是对于每一种步长\(c\),左端点\(a\)都有\(\left\lceil\dfrac{i}{c}\right\rceil\)种取值,暴力计算,时间复杂度\(O(n^2)\)。(提交记录)考虑......
  • P10888 【MX-S3-T4】「FeOI Round 1」醒餞の鳥 (feat. Feryquitous) 题解
    话说这题真的有紫吗(问号注意到数据范围中提到$\sum{nm}\le2\times10^5$,这里实际上是隐含了\(\min(n,m)\le\sqrt{2\times10^5}\)的。我们考虑根据\(n\)和\(m\)的大小关系设计出不同的算法。\(m<n\)一个比较直接的想法是对于每一个科目先按该科目的分数排序,这样......
  • 【MX-S3】梦熊周赛 · 提高组 3 & FeOI Round 1
    野心Journey题意:\(\text{range}(a,b,c)\)表示序列\[[a,a+c,a+2c,\cdots,a+kc]\]其中\(k\)是满足\(a+kc<b\)的最大非负整数。给定大小为\(n\le2\times10^7\)的数组\(g\),求\[\sum_{a=1}^n\sum_{b=a+1}^n\sum_{c=1}^n\sum_{i\in\tex......
  • INFS3208 – Cloud Computing
    SchoolofElectricalEngineeringandComputerScienceINFS3208–CloudComputingProgrammingAssignmentTaskI(10Marks)Taskdescription:Youareadeveloperataleadingsoftwaredevelopmentcompanytaskedwithcreatingascalableandefficientdeploy......
  • jenkins推送代码到aws的s3存储桶
    1.aws创建用户2.服务器配置安装awspip3.6installawscliAWSAccessKeyID[None]:公钥AWSSecretAccessKey[None]:私钥Defaultregionname[None]:地域Defaultoutputformat[None]:json3.s3存储桶要提前建好4.piplinepipeline{enviro......
  • html5+CSS3 Canvas动画分享
    1.赛朋博客赛车动画 源码分享:<!DOCTYPEhtml><htmllang="en"><head>  <metacharset="UTF-8">  <title>赛车</title>  <style>    *{      margin:0;      padding:0;      bo......
  • 医学成像控制卡:268-基于FMC接口的DSP TMS320C6657子卡模块 关键任务
    基于FMC接口的DSPTMS320C6657子卡模块一、概述       FMC连接器是一种高速多pin的互连器件,广泛应用于板卡对接的设备中,特别是在xilinx公司的所有开发板中都使用。该DSP子卡模块以TI强大性能DSPTMS320C6657作为主芯片,专门针对xilinx开发板设计的标准板卡,用于关键任务......
  • 基于nexus3配置Python仓库过程详解
    基于nexus3配置Python仓库过程详解更新时间:2020年06月15日09:08:04  作者:三度 这篇文章主要介绍了基于nexus3配置Python仓库过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下搭建Python私服,我们依旧使用ne......