首页 > 其他分享 >NOIP 模拟 5

NOIP 模拟 5

时间:2024-11-07 17:20:11浏览次数:5  
标签:前缀 NOIP sum kn 三维 choose 模拟 式子

T1 选彩笔(rgb)

观察到值域较小,考虑静态值域三维偏序,人话:三维前缀和。
三维前缀和的式子:get(i,j,k,x,y,z)=s[i][j][k]-s[i][j][z-1]-(s[i][y-1][k]-s[i][y-1][z-1])-(s[x-1][j][k]-s[x-1][y-1][k]-s[x-1][j][z-1]+s[x-1][y-1][k-1]);,直接几何意义推的,但是高维前缀和有通式。然后二分 check 即可。

T2 兵蚁排序(sort)

由样例可知,一个一个换过来冲突最少,从前往后依次处理每一位,发现不同就往后找这个数第一次出现的位置,这里具有单调性,它不能后面的就一定不能,一路换过来即可。

T3 人口局 DBA(dba)

首先有数位 DP,卡空间,所以用递推形式,前缀和优化可以做到 \(n^3\),其实对于没有限制的情况就是解一个形如 \(\sum x_i=s\) 方程的非负整数解数量。这个可以直接用容斥求,设

单次 \(\mathcal{O}(n)\) 肯定还是不行,发现我们求的式子很相似,只有 \(s\) 不同,且它是一个连续的区间,注意到这个之后不妨推下式子,设 \(ans_{p,s}\) 表示这个到 \(p\) 位,还剩下 \(s\) 的值,如下

\[\begin{aligned} ans_{p,s}&=\sum_{i=0}^{a_p-1}\sum_{k=0}^{m-p}(-1)^k{m-p\choose k}{s-i-kn+m-p-1\choose m-p-1}\\ &=\sum_{k=0}^{m-p}(-1)^k{m-p\choose k}\sum_{i=0}^{a_p-1}{s-i-kn+m-p-1\choose m-p-1}\\ &=\sum_{k=0}^{m-p}(-1)^k{m-p\choose k}\left({s-kn+m-p\choose m-p}-{s-a_p-kn+m-p\choose m-p}\right) \end{aligned} \]

因为 \(s\) 连续,所以把组合数拆开之后就互相抵消了,消去了一个和式,然后就能 \(\mathcal{O}(n^2)\) 直接判了。

T4 银行的源起(banking)

不会,抽空改。

总结

笑点解析:打的比 CSP 高,实际上只打了 220pts,退役分。

标签:前缀,NOIP,sum,kn,三维,choose,模拟,式子
From: https://www.cnblogs.com/Ishar-zdl/p/18533176

相关文章

  • noip模拟8
    A图书管理之前考过。。。但是我忘了咋写了,然后随便胡了个动态开点权值数上去,\(O(n^2\logn)\)拿了\(80\)。。。维护一个桶,检测到进来的两个数在中位数同侧,则中位数移动,否则不移动,然后就好了?。。。点击查看代码#include<bits/stdc++.h>usingnamespacestd;intn;cons......
  • NOIP2024集训Day71 贪心
    NOIP2024集训Day71贪心B.[CCO2015]饥饿的狐狸显然的,要求出最大美味值,应该先交错吃温度最大的和最小的饼干。所以我们给所有饼干按照温度排序,交替选择左右端点吃,如果喝水能够达到更大那就先喝水再吃,反正水管够。分两种情况,即左右端点谁先开始,再取个\(\operatorname{max}\)。......
  • lanqiaoOJ 1110:小王子单链表 ← 数组模拟实现
     【题目来源】https://www.lanqiao.cn/problems/1110/learning/【题目描述】小王子有一天迷上了排队的游戏,桌子上有标号为1-10的10个玩具,现在小王子将他们排成一列,可小王子还是太小了,他不确定他到底想把哪个玩具摆在哪里,直到最后才能排成一条直线,求玩具的编号。已知他排......
  • 基于Arduino的数码管显示变阻器模拟量读取值
    题目要求采集变阻器模拟量信号在数码管中显示,要求有二位小数电路连接数码管连接:数码管的七个段(a-g)分别连接到Arduino的引脚2到8。数码管的小数点(dp)连接到Arduino的引脚9。数码管的4个控制引脚连接到Arduino的引脚10到11。变阻器连接:变阻器的模拟输出引脚连接到Arduin......
  • 多校A层冲刺NOIP2024模拟赛18
    多校A层冲刺NOIP2024模拟赛18T1选彩笔(rgb)签到题,但是没签上。。。没想到三维前缀和,直接上了个bitset。就是直接二分答案,然后枚举这三维每维的区间的起点,前缀和查数量是否大于等于$K$即可,也可以把二分答案改为第一维的双指针,少一个$log$。T2兵蚁排序(sort)比T1还签......
  • CSP2024 前集训:NOIP2024加赛 2
    前言T2开太晚了,没打完,别的没怎么挂。哦对,T1以为埃筛复杂度是\(nlog^2\),实际上是\(n\ln(\ln(n))\),结果以为复杂度是错的,然后本地不开O2都飞快,我甚至还在惊叹本地竟然能跑\(5e9\)……还有我之前不知道树的直径的中点时唯一的……T1新的阶乘直接埃筛做完了。点击查......
  • NOIP2024 模拟赛 #15 总结
    Larunatrecy:信心赛。赛时T1求中位数,想起前两天做过的[ABC203D]Pond,考虑了二分答案。看出二分答案后不会做了,罚坐\(20\)min。然后发现我傻逼了,选出一个区间翻转,可以通过钦定右端点,找到最优的左端点得到,神仙Heldivis就出过一道这样的题。写完后调了下二分边界过了大样......
  • CSP2024 前集训:多校A层冲刺NOIP2024模拟赛18
    前言不知道咋回事儿?脑子里一直放歌。然后T3空间给了256,开了256.23死了。T1选彩笔显然可以二分答案,所以现在有了\(O(nv^3\logv)\)的做法,去重后可以拿到\(80pts\),发现直接三维前缀和就可以做到\(O(v^3\logv)\)。点击查看代码#include<bits/stdc++.h>#definell......
  • 『模拟赛』NOIP2024加赛2
    Rank一直烂,什么时候触底反弹(A.新的阶乘赛时觉得线筛一遍同时统计每个质数的指数就做完了,然后本机怎么跑不进1s,卡常卡了半个小时,最后没T,但是vector炸了,70pts。可以换思路考虑,赛时一直没转换过来。对于每个质数枚举其倍数统计贡献。复杂度不知道多少,跑得中等速度。点......
  • 「模拟赛」NOIP2024 模拟 2
    Rank14,190pts比赛链接新的阶乘容易发现只需要处理1~n的质因子分解即可,每个数\(i\)本来有\(n-i+1\)个我们在欧拉筛的过程中同时维护每个数的一个质因子\(pri\)每次从\(n\)到1把遇到的非质数\(i\)现有的个数加到他的质因子\(pri_i\)和\(\frac{i}{pri_i......