cojs 香蕉 解题报告
啦啦啦,今天的考试题
不过原来考试题的n<=10w
由于我有更好的做法,所以我就改成20亿辣
本来先说一说考试题的正解做法的
但是复杂度是O(nlogm),实在是太渣了
所以还是说一说我的做法吧
首先假定都会写裸的DP
我们考虑A,B,如果B不能转移到A,当且仅当A不等于B且A%B=0
很容易发现当A是素数时,A只不能从1那里转移过来,也就是说素数的转移都是一样的
换句话说,在状态里当长度一定时以每个素数结尾的方案一定是一样的
这就给了我们一些启发,很容易得到结论若两个数的唯一分解式的指数排序后指数序列完全一样
则这两个数的转移一定相同,具体证明可以使用数学归纳法
(我离考试结束快15分钟的时候才证明了这个结论,结果没时间写了,真是悲桑)
我们定义转移相同的数为一个等价类,可以知道m=100000时有160个等价类
这样我们就可以构造一个160*160的矩阵,把转移暴力搞出来之后矩阵乘法加速DP
时间复杂度O(160^3logn),这样写的话在cojs上交会小小的T几个点
虽然时间复杂度分析下来是可以跑的过的
但是我们要进行跟时间复杂度同阶的模操作,这样会大大减慢程序运算速度
之后我们进行一些分析,998244353这个模数<=2^30,相乘<=2^60
如果我们开unsigned long long,那么我们理论上可以进行16次加法之后再做模运算
实际程序实现我采用了每加10次取一次模的方法,这样取模的次数大大缩小了
就可以在cojs上通过了
(虽然卡常数很不厚道,但是鉴于这道题的思路是我从头到尾YY出来的,包括对于常数的优化
所以就这样出在cojs上吧)
cojs 香蕉 解题报告的更多相关文章
- cojs 西瓜 解题报告
首先我们要知道pick公式 设二维平面内任意多边形面积为S 设多边形内部整点数为a 设多边形边界的整点数为b 则满足S=a+b/2-1 变形得a=S-b/2+1 由期望的线性性质我们把问题转化为 1. ...
- cojs 火龙果 解题报告
昨天晚上做了一发HNOI,感觉有很多新的idea 于是就选了一个出成题目辣 我们考虑暴力 暴力很明显是把这个图A<=D,B<=E的形态搞出来 之后处理相关的询问 这样我们会很容易得到正解: ...
- ZOJ 1093 Monkey and Banana (LIS)解题报告
ZOJ 1093 Monkey and Banana (LIS)解题报告 题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid= ...
- CH Round #56 - 国庆节欢乐赛解题报告
最近CH上的比赛很多,在此会全部写出解题报告,与大家交流一下解题方法与技巧. T1 魔幻森林 描述 Cortana来到了一片魔幻森林,这片森林可以被视作一个N*M的矩阵,矩阵中的每个位置上都长着一棵树 ...
- 二模13day1解题报告
二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...
- BZOJ 1051 最受欢迎的牛 解题报告
题目直接摆在这里! 1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 4438 Solved: 2353[S ...
- 习题:codevs 2822 爱在心中 解题报告
这次的解题报告是有关tarjan算法的一道思维量比较大的题目(真的是原创文章,希望管理员不要再把文章移出首页). 这道题蒟蒻以前做过,但是今天由于要复习tarjan算法,于是就看到codevs分类强联 ...
- 习题:codevs 1035 火车停留解题报告
本蒟蒻又来写解题报告了.这次的题目是codevs 1035 火车停留. 题目大意就是给m个火车的到达时间.停留时间和车载货物的价值,车站有n个车道,而火车停留一次车站就会从车载货物价值中获得1%的利润 ...
- 习题: codevs 2492 上帝造题的七分钟2 解题报告
这道题是受到大犇MagHSK的启发我才得以想出来的,蒟蒻觉得自己的代码跟MagHSK大犇的代码完全比不上,所以这里蒟蒻就套用了MagHSK大犇的代码(大家可以关注下我的博客,友情链接就是大犇MagHS ...
随机推荐
- cordova navigator app 对象
navigator.app.loadUrl() 加载 web 页面的应用程序中或者系统默认的浏览器中 navigator .app.cancelLoadUrl() 在 web 页面成功加载之前取消 ...
- 利用dropbox备份vps数据
在VPS的数据最好定时备份,免得服务器出了什么问题,数据就全丢了.我使用dropbox定时同步wordpress文件夹和数据库信息. 首先下载dropbox ? 1 wget -O dropbox.t ...
- 防DDOS攻击
/ip firewall filter add chain=forward connection-state=new action=jump jump-target=block-ddos add ch ...
- [Solved] install Gentoo in VBox: network interface eth0 does not exist
ERROR:interface eth0 does not exist; ensure that you have loaded the correct kernel moudle for your ...
- 数据分析≠Hadoop+NoSQL,不妨先看完善现有技术的10条捷径(分享)
Hadoop让大数据分析走向了大众化,然而它的部署仍需耗费大量的人力和物力.在直奔Hadoop之前,是否已经将现有技术推向极限?这里总结了对Hadoop投资前可以尝试的10个替代方案, ...
- 学C++之感悟
程序设计真的就这么难得入门啊 最要命的事情就是看那些看不懂的书.断断续续地看C++Primer好几天了,还是一点眉目都没有,稀里糊涂的.看得头疼了用Google找过来人留下的东西看,无意中发现了一篇自 ...
- STL算法
STL算法部分主要由头文 件<algorithm>,<numeric>,<functional>组成.要使用 STL中的算法函数必须包含头文件<algorit ...
- topcoder 673
DiV1 300:给一组士兵再给一组战马都有权值. 安排战马的顺序的方案数,是第一个士兵和其战马的权值乘积最大. 做法:随便暴力就好. 枚举战马和第一个士兵匹配.其他士兵按权值从大到小排序,战马权值按 ...
- aspnet_regiis.exe 的用法
使用aspnet_regiis.exe注册.NET Framework 重新安装IIS以后,需要用aspnet_regiis.exe来注册.NET Framework, 如下: C:\WINDOWS\ ...
- WPF 多线程处理(3)
WPF 多线程处理(1) WPF 多线程处理(2) WPF 多线程处理(3) WPF 多线程处理(4) WPF 多线程处理(5) WPF 多线程处理(6) 首先我们需要几个属性来保存取得的数据,因为在 ...