BZOJ4524 CQOI2016伪光滑数(堆)】的更多相关文章

[BZOJ4524][Cqoi2016]伪光滑数 Description 若一个大于1的整数M的质因数分解有k项,其最大的质因子为Ak,并且满足Ak^K<=N,Ak<128,我们就称整数M为N-伪光滑数.现在给出N,求所有整数中,第K大的N-伪光滑数. Input 只有一行,为用空格隔开的整数N和K 2 ≤ N ≤ 10^18, 1 ≤ K ≤ 800000,保证至少有 K 个满足要求的数 Output 只有一行,为一个整数,表示答案. Sample Input 12345 20 Sample…
4524: [Cqoi2016]伪光滑数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 183  Solved: 82[Submit][Status][Discuss] Description 若一个大于R的整数J的质因数分解有F项,其最大的质因子为ak,并且满足ak^k≤N, ak<128,我们就称整数J为N-伪光滑数. 现在给出L,求所有整数中,第E大的N-伪光滑数. Input 只有一行,为用空格隔开的整数L和E. 2 ≤ N ≤ 10^1…
对于每个质数求出其作为最大质因子时最多能有几个质因子,开始时将这些ak1~akmaxk扔进堆.考虑构造方案,使得每次取出最大值后,最大质因子.质因子数均与其相同且恰好比它小的数都在堆里.类似暴搜,对于当前考虑的质因子,可以将其去掉并乘上一个恰好比它小的小的质因子,也可以转而考虑下一个质因子.于是给堆中元素记录当前考虑的质因子.最小质因子,每次进行两种更新即可. 正解似乎是可持久化可并堆+dp,当然不会. #include<iostream> #include<cstdio> #in…
BZOJ上的题面很乱,这里有一个题面. 题解: 正解是可持久化可并堆+DP,可惜我不会... 但暴力也可过这道题. 先在不超过N的前提下,在大根堆里加入每个质数的J次方,1<=j, 然后就可以发现,当前的堆里有着不超过N的最大值. 然后每次找到堆顶,用这个数除以一次原来的质数乘上一次比它小的质数,把新数全部加入堆中. 按照这样的方式构造出第K优解. #include<iostream> #include<cstdio> #include<cstring> #inc…
目录 @description@ @solution@ @version - 1@ @version - 2@ @accepted code@ @version - 1@ @version - 2@ @details@ @description@ 若一个大于 1 的整数 M 的质因数分解有 k 项,其最大的质因子为 \(A_k\),并且满足 \(A_k^k \le N\),\(A_k < 128\),我们就称整数 M 为 N - 伪光滑数. 现在给出 N,求所有整数中第 K 大的 N - 伪光滑…
Description 若一个大于 \(1\) 的整数 \(M\) 的质因数分解有 \(k\) 项,其最大的质因子为 \(Ak\) ,并且满足 \(Ak^K \leq N\) , \(Ak<128\) ,我们就称整数 \(M\) 为 \(N-\) 伪光滑数.现在给出 \(N\) ,求所有整数中,第 \(K\) 大的 \(N-\) 伪光滑数. Input 只有一行,为用空格隔开的整数 \(N\) 和 \(K\) \(2 \leq N \leq 10^18\) ,\(1 \leq K \leq 80…
题目描述 若一个大于1的整数M的质因数分解有k项,其最大的质因子为Ak,并且满足Ak^K<=N,Ak<128,我们就称整数M为N-伪 光滑数.现在给出N,求所有整数中,第K大的N-伪光滑数. 题解 题面的k意思是将这个数质因数分解后所有的质因子的指数和. 我们先把128以内的所有素数找出来,然后做一个dp. 我们令dp[i][j]表示当前数的最大的质因子为p[i],当前所有素因子的指数和为j的数的集合. 我们再令g[i][j]表示当指数和位j时,所有最大质因子小于等于p[i]的数的集合. 然后…
题面 题解 先筛出$<128$的质数,很少,打个表即可 然后钦定一个质数最大,不断替换即可(丢进大根堆里面,然后取出一个,替换在丢进去即可) 具体来说,设一个四元组$[t,x,y,z]$表示当前的总乘积为$t$,$x$为最大的质数,$y$表示为$x$的多少次方,最后一个$z$表示当前能枚举的右界. #include <cstdio> #include <cstring> #include <algorithm> #include <queue> usi…
2021.08.01 P4359 伪光滑数(二叉堆) [P4359 CQOI2016]伪光滑数 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 若一个大于 11 的整数 MM 的质因数分解有 k 项,其最大的质因子为 a_k,并且满足 \[a_{k}^{k} ≤N,a_k < 128 \] ,我们就称整数 M 为 N - 伪光滑数. 现在给出 NN,求所有整数中,第 KK 大的 NN - 伪光滑数. 分析: 在k一定时,如果已知p_maxn,则val_maxn=k*p_…
Loj 2047 伪光滑数 正解较复杂,但这道题其实可以通过暴力解决. 预处理出 \(128\) 内的所有质数,把 \(n\) 内的 \(prime[i]^j\) 丢进堆中,再尝试对每个数变形,除一个质因子,再乘一个. 保证最大值因子的次数为正就可以了,取 \(k\) 次堆顶即得答案. #include<bits/stdc++.h> using namespace std; #define ll long long #define mp make_pair #define pii pair&l…
题解 可持久化可并堆 用\(f[i,j]\)表示最大的质数标号为i,然后有j个质数乘起来 用\(g[i,j]\)表示\(\sum_{k = 1}^{i}f[k,j]\) 转移是 \(f[i,j] = \sum_{k= 1}^{j} g[i - 1,j - k] * p_{i}^{k}\) \(g[i,j] += f[i,j]\) 这就要资瓷两个集合的合并了 可是集合显然非常大,我们可以用可持久化来帮助完成这件事,就完成了 代码 #include <bits/stdc++.h> #define…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
感觉CQOI的难度挺好的,比较贴近自身,所以拿出来做了一下 CQOI2016 Day1 T1:不同的最小割 涉及算法:最小割/分治/最小割树 思路: 最小割树裸题,直接分治最小割,记录下答案,最后排序一下,统计不同的答案即可 CODE: #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> #include<cmath> using namespace…
前情提要:我是丝薄,noip405的丝薄,所以这次省选特别虚 day0 上午随便切了两个题.背了下版. 下午看考场,环境还好.键盘也不错.评測姬非常好,就是人和人之间有点近,我回去买了耳塞(尽管并没实用上 晚上回去一边看板一边纠结,想自己万一进不了队怎么办,熬到十一点过最终睡了.我心态果然还是不够好啊,应该什么都不想的. day1 上午六点半就起来了,七点到学校.开车过去七点四十就到了重邮. 然后老师们讲了下比赛的注意事项,竟然要多存盘以防别人关错电脑233 然后就開始考试了. 一開始考试我就惊…
题面 若一个大于 11 的整数 M的质因数分解有 k 项,其最大的质因子为 \(a_k\),并且满足 \({a_k}^k \leq N,k<128\),我们就称整数 M 为 N-伪光滑数. 现在给出 N*N,求所有整数中,第 K大的 N-伪光滑数. 分析 先筛出128以内的所有质数 根据题意贪心考虑,显然M的质因数分解中最大的质数越大越好 于是我们把每个质数p的1次方,2次方,3次方...k次方(\(p^k \leq n\))加入堆(堆顶元素最大). 然后取k-1次,每次对于取出来的数x,除掉它…
2.关于Minor GC,Major GC与Full GC 1)  Minor GC:即新生代的GC,指发生在新生代的垃圾收集动作.当新生代的Eden区内存不足时,就会触发Minor GC.由于对象创建时,都会在Eden区分配内存,因此通过日志可以看到Minor GC动作执行相当频繁:同时,由于新生代对象朝生夕亡的特性,每次Minor GC的效果都十分理想.此外,Minor GC的效率也是非常高的. 2)Major GC与Full GC:我们可以认为Major GC与Full GC是一个概念,是…
[20190401]关于semtimedop函数调用.txt --//上个星期测试,链接http://blog.itpub.net/267265/viewspace-2639675/--//关于sql语句中mutexes的问题,实际上仅仅涉及cursor: pin S.--//我的测试说明这个mutexes在父光标的堆0中. --//我当时相当然认为:16:04:56.410785 semtimedop(309166080, 0x7fff83068fd0, 1, {0, 10000000}) =…
问题说明:公司内网环境中部署的jenkins代码发版平台突然不能访问了,查看tomcat的catalina.out日志发现报错如下: [root@redmine logs]# tail -f /srv/apache-tomcat-7.0.67/logs/catalina.out ...... Exception in thread "http-bio-8080-exec-5" java.lang.OutOfMemoryError: PermGen space Exception in…
1.  http://blog.csdn.net/column/details/14851.html   地址记录 2.关于Minor GC,Major GC与Full GC 1)  Minor GC:即新生代的GC,指发生在新生代的垃圾收集动作.当新生代的Eden区内存不足时,就会触发Minor GC.由于对象创建时,都会在Eden区分配内存,因此通过日志可以看到Minor GC动作执行相当频繁:同时,由于新生代对象朝生夕亡的特性,每次Minor GC的效果都十分理想.此外,Minor GC的…
题意:有两堆石子,两人轮流取,每次可以取一堆中的任意个,或两堆中取相同多个.谁先取光所有堆谁赢.问先手能否获胜. 分析:威佐夫博弈,如果是奇异态则先手输,否则先手赢.直接套用公式判断是否为奇异态,设第一堆有a个,第二堆有b个,二者的差为c个. 奇异态近似符合公式b/a=a/c.即近似符合黄金分割.严格符合公式a=floor(c/黄金分割数).黄金分割数=(sqrt(5)-1)/2. #include <cstdio> #include <cmath> #include <ut…
这个洞是在论坛里看到的,感觉很有意思,来学习一下.个人感觉IE或者说是浏览器的洞和Adobe洞都是比较难调的,主要是有大量的类难以摸清之间的关系. 这个洞是一个整数溢出的洞,这个不是重点.重点是利用的思路,利用思路是挖坑法,即所谓的make hole,通过挖坑来泄漏dll的基址,然后再加以利用.make hole并不是独门绝技,这种方法在IE和Adobe的漏洞利用中都有出现(主要是因为可以嵌入js,实现自由分配内存?),但是我觉得这种方法还是很巧妙的,就像大牛说的是一种比较优雅的手法.尤其是对内…
每个Java程序都只能使用一定量的内存, 这种限制是由JVM的启动参数决定的.而更复杂的情况在于, Java程序的内存分为两部分: 堆内存(Heap space)和 永久代(Permanent Generation, 简称 Permgen): 这两个区域的最大内存大小, 由JVM启动参数 -Xmx 和 -XX:MaxPermSize 指定. 如果没有明确指定, 则根据操作系统类型和物理内存的大小来确定. 假如在创建新的对象时, 堆内存中的空间不足以存放新创建的对象, 就会引发java.lang.…
T1: 考虑如何能按顺序生成光滑数.对每个质数用队列维护包含此质数的候选集合,每次从所有队首取出最小的作为一个光滑数,用每个质数乘上这个光滑数并加入相应候选集合.这样不会漏掉一个光滑数,但会有重复.比如取到光滑数$3$,乘上$2$加入了$2$的队列,而取到$2$时同样乘$3$加入$3$的队列.如果规定一个数只由自己最小的质因数产生就可以去重. T2: 状压$dp$.首先序列是按顺序依次插数的,就是说调换前后顺序可能会不合法.考场上打的$dp$没注意这一点,做成了排列问题,调了一个多小时过不了样例…
两堆石子每次可以在大堆中取小堆的倍数个石子 第一个拿光某个堆的玩家赢 假设a>=b 必胜状态:a%b==0或a/b>=2 因为当a/b>=2时 当前玩家可以选择将状态转移至 a%b+b或a%b 同时a%b+b可转移至a%b 则这两个状态中必有一个为必胜态 #include<bits/stdc++.h> using namespace std; int main() { int a, b; while (scanf("%d %d", &a, &…
BUUCTF Crypto WP 几道密码学wp [GXYCTF2019]CheckIn 知识点:Base64,rot47 下载文件后,发现一个txt文件,打开发现一串base64,界面之后出现一串乱码,由符号,字母,数字构成,尝试多词之后发现是rot47 大致介绍一下rot47,这个其实和凯撒差不多,都属于移位密码,rot47大家估计不常见,常见的是rot13,rot47是对数字,字母,常用符号进行编码,按照它们的ASCII值进行位置替换,并且ASCII的范围在33~126,解密时,对于ASC…
前言 踩了挺多以前没踩过的坑... T1 一开始是打了一个 60pts 的 DFS ,在与暴力拍了几组数据保证正确性之后, 突然想到 BFS 可能会更快一些,然后就又码了一个 BFS,又和 DFS 拍了200组数据, 发现 BFS 确实快,然后就交了一个 BFS 然后我就直接 \(60pts\rightarrow 0pts\) 后来看了一下特殊性质该了一下边界就 80pts了,肝疼QAQ 然后就是 T3 以前一直是在 结构体里读入的,这回就翻车了. 还有就是 map 的重载小于号最好不要和等于号…
传送门 咕了蚯蚓这题+前一天被蚊子折腾了半宿没睡=全场几乎就我这题分最低-- 发现这里光滑数是不断乘出来的--记得这是一个很经典的套路,然而当时我咕了 求一个每个值都是 \(\{p_i\}\) 中至少一个数的倍数的数列第 \(k\) 项: 举个例子,求2的所有倍数及3的所有倍数的并集中的第 \(k\) 项 一大难点在于排序和去重 然而实际上可以用队列处理,可以免去排序去重的过程 具体来说,对每个因子维护一个队列,初始只有这个因子本身 每次从所有队列的首元素中取出最小的那个,这个元素即为数列第 \…
考场 开题,感觉 T1 很像 dky 讲过的一道中北大学 ACM 题,T3 一看就是随机化,具体不知道怎么做. T1 sb 题,直接取当前最小的光滑数,把它乘一个质因子放入候选集.类似<蚯蚓>开 B 个队列即可,\(O(KB)\). T3 推出了四元二次方程组,不会解...考虑过枚举 \(s\). T2 貌似可以状压?两个质因子的情况特判就行了. 7.40 开始写 T1,最初 RE 了,加上判断队列为空就过了所有样例,看一眼才 8.00?想了想没什么可写挂挂的地方,时间又开了 \(2\)s,不…
\(\color{white}{\mathbb{失足而坠千里,翻覆而没百足,名之以:深渊}}\) 这场考试的时间分配非常不科学 开题试图想 \(t1\) 正解,一个半小时后还是只有暴力,特别惊慌失措 然后赶紧看 \(t2\),看题发现是个简单的线段树合并,没有多模样例,半个小时打完结论后发现能过样例,也没对拍就直接放下了 然后最后一个小时硬想 \(t3\),写了一个复杂度比较正确的网络流上去,发现有好多漏洞,然后一直调,最后考试结束的时候甚至暴力都没来得及打 A. Hunter 玄妙的概率题 如…
\(\color{white}{\mathbb{山高而青云冷,池深而蛟穴昏,行以慎步,援以轻身,名之以:落石}}\) 开题发现 \(t1\) 80分特别好写,于是先写了 但是这个做法没有任何扩展性,导致一直没有往正解的方向想 \(t3\) 看见有点的坐标,以为是计算几何,于是写完 \(t1\) 打了个暴力就看 \(t2\) 了 但事实证明 \(t2\) 的难度实际上是最大的,这次题目难度的判断又出现了严重的失误 A. Smooth 观察 B=2 的情况,发现排好序两因子的次数递增是没有规律的 可…