首页 > 其他分享 >[题解]洛谷 P4930、BZOJ 4221

[题解]洛谷 P4930、BZOJ 4221

时间:2022-10-04 19:22:55浏览次数:67  
标签:洛谷 题解 P4930 匹配 prod 4221 BZOJ

洛谷 P4930

考虑 \(\varphi\) 有什么性质,设 \(x\) 的质因数分解为 \(\prod_{i=1}^m p_i^{a_i}\),那么 \(n=\varphi(x)=\prod_{i=1}^m(p_i-1)\times\prod_{i=1}^m p_i^{a_i-1}\),显然 \(n\) 的因数 \(d\) 如果加一后是质数,那么 \(d+1\) 就可能是 \(x\) 的因数,反之亦然,又注意到答案不多,所以暴力搜索即可通过。

这道题的关键是注意到答案数量级很小,可以大胆搜索。

BZOJ 4221

首先注意到鼠和袋其实是分离的,鼠装没装进袋不影响它继续装鼠,袋装没装鼠也不影响袋主继续被装,唯一的限制是鼠只能装进一个袋,一个袋只能装一个鼠,所以想到拆成 \(2n\) 个点搞匹配。

由于鼠不会装进自己的袋,所以这个条件去掉,此时就相当于满足条件的即可乱装,众所周知排序不亏,所以鼠和袋都从大到小排序。

观察装到不能再装的条件是什么:设当前最后一个没装的鼠能装进 \([1,x]\) 袋,那么这些袋子一定都装满了。

有了这些条件考虑如何求答案,看到要求方案数且 \(n\) 比较小,可以考虑动态规划。第一步设状态,考虑当前转移和什么有关,首先肯定要记录当前匹配到第 \(i\) 只鼠,然后看袋,设 \(i\) 最多能匹配到 \(x\),那么只需要关注 \([1,x]\) 中袋的匹配情况,需要记录 \(j\) 个袋和 \([1,i]\) 中的鼠匹配。这样就可以转移了吗?因为显然要求立方所以不行。注意到还有一个要求是如果 \(i\) 没装袋,那么 \([1,x]\) 需要装满,如果 \(j<x\) 就意味着剩下的一定和后面的鼠匹配了,所以需要多记录一个 \(k\) 表示 \([1,x]\) 中有 \(k\) 个袋装 \(i\) 后面的鼠,这样我们就可以根据 \(i\) 装不装讨论转移:

  1. \(i\) 不装,那么 \([1,x]\) 要填满,\(f_{i,j,x-j}\leftarrow f_{i,j,x-j}+f_{i-1,j,k}\);
  2. \(i\) 装,且装到未定的袋,\(f_{i,j+1,k}\leftarrow f_{i,j+1,k}+(x-j-k)f_{i-1,j,k}\);
  3. \(i\) 装,且装到预订装后面鼠的袋,\(f_{i,j+1,k-1}\leftarrow f_{i,j+1,k-1}+kf_{i-1,j,k}\)。

然后输出 \(\sum_{i=0}^n f_{n,i,0}\) 即可。

这个题最重要的是转换成匹配,然后动规的状态要设计好。

标签:洛谷,题解,P4930,匹配,prod,4221,BZOJ
From: https://www.cnblogs.com/juruoajh/p/16753379.html

相关文章

  • 洛谷 P4186
    首先对于一棵子树,肯定是放在这棵子树中深度最小的叶节点。那如何分析子树中深度最小的叶节点深度够不够小呢?我们看到,我们关注叶节点深度是为了看它能不能在Bessie从根......
  • 「ROIR 2021 Day 1」题解
    loj有原题。别问为什么没T4,问就是不会,等以后来补。T1-两台机器设两台机子分别为\(a,b\),分\(4\)种情况:只用\(a\),只用\(b\),先\(a\)后\(b\),先\(b\)后\(a\),判断......
  • 洛谷 CF550C Divisibility by Eight(DP/数论)
    遇事不决,小学数学。https://www.luogu.com.cn/problem/CF550C题目大意:给你一个位数不超过100的非负整数N(不含前导0)。你的任务是判断这个数字能否通过去掉其中......
  • Windows下CLion中文乱码问题解决
    (目录)原因分析Windows内部采用UTF-16编码,对于中文操作系统使用GBK编码,但是CLion默认文本编码为UTF-8,当编码不一致时,就会造成输出乱码,甚至编译不通过。解决方案当然,对于......
  • 类与对象课件问题解答
    结果:true 结果:false原因:当“==”施加于原始数据类型变量时,是比较变量所保存的数据是否相等。     当“==”施加于引用类型变量时,是比较这两个变量是否引用......
  • Luogu P5089 [eJOI2018] 元素周期表 题解
    (从洛谷博客搬过来的)这道题嘛..主要还是找性质推规律。拿到题,第一眼:噢噢爆搜啊。第二眼:噢噢贪心啊。第三眼:很好贪心假了。然后苦思冥想半个小时去看题解。看到兔队的......
  • CF1427E Xum 题解
    (从洛谷博客搬过来的)学校比赛的时候考了这道题,我当然是一分没得。这是一道好构造题。先不说正解,我看别的题解都没有说怎么拿部分分,但是如果赛时不会正解,那么拿部分分就......
  • “科林明伦杯”哈尔滨理工大学暑假训练赛 F 题解
    题目内容传送门前置知识组合数乘法逆元Modularint模板题目分析分析输入与题意,本题关键即在推导有多少个不同数组的计算公式。设当前数组最大值为i,则有:\[ans_i......
  • 【树上背包】洛谷 P4516 [JSOI2018] 潜入行动
    P4516[JSOI2018]潜入行动省选/NOI-、树上背包计数题意略设状态为\(dp[u][j][0/1][0/1]\),u点子树放了j个装置,u点有没有放装置,u点有没有被监听的方案数。对......
  • 洛谷 P8557 炼金术 题解
    题目大意给定\(n\)种金属,放进\(k\)个熔炉,要求最终每种金属都要能从熔炉里拿出来,求熔炉炼金的方案数对\(998244353\)取模。分析从金属角度考虑。不难发现对于每......