博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ER-18
阅读量:7046 次
发布时间:2019-06-28

本文共 542 字,大约阅读时间需要 1 分钟。

就是推出循环矩阵乘积

然后一次操作后得到的c矩阵第一行第i列就是i的情况(b矩阵下标是a矩阵下标的转置)

两个循环矩阵乘积还是循环矩阵

以此推式子,发现c矩阵的第一行可以用a,b的第一行用循环卷积的形式表示

循环卷积也有结合律,可以快速幂

得到的多项式就是最终c矩阵第一行,直接输出即可。

emmm。。。

其实不用循环矩阵(这样只是说得方便严谨)

把b多项式reverse

画图可以得到

c=a*b *是循环卷积。

 

红色插入补充一点:

对于每个ai,质因数分解,枚举出约数。

开2e7个vector记录每个数是哪些数的约数,然后枚举每个数作为约数,遍历vector进行dfs

总复杂度是约数个数的5e7左右

但是2e7个vector会爆炸

开大数组然后分配内存:

cnt[2e7]表示是i的倍数的点多少个。i|d,cnt[i]++

通过cnt大小分配位置

再进行一次,把每个数填进去(这里可以开1e5个vector存约数,就不用再分解了)

 

第一步这个反演类似莫比乌斯反演

不同的是这是枚举倍数

分析法可以证明(把结果的g用条件换掉,然后大力反演,最后用f*[n==1]得到f)

 

转载于:https://www.cnblogs.com/Miracevin/p/10283561.html

你可能感兴趣的文章
一款MVC5+EF+Bootstrap搭建的后台通用管理系统模板
查看>>
Java使用reids,以及redis与shiro集成
查看>>
zyupload四种不同的PHP上传demo
查看>>
好的博客网站收藏
查看>>
数字转IP地址函数
查看>>
glibc 各版本发布时间以及内核默认glibc版本
查看>>
ASP.NET SignalR2持久连接层解析
查看>>
利用mk-table-checksum监测Mysql主从数据一致性操作记录
查看>>
Access自定义函数(人民币大写)
查看>>
云计算学习(3-2)云计算的由来-行业背景
查看>>
java file类
查看>>
HTML(一):HTML基本元素标签
查看>>
[hbase] 查询数据
查看>>
HTML5学习笔记(十一):JavaScript基础
查看>>
Java中的反射
查看>>
非[无]root权限 服务器 下安装perl以及perl模块
查看>>
[macOS] PHP双版本,5.6跟7.1
查看>>
asd
查看>>
python图片处理(一)
查看>>
Eclipse下导入外部jar包的3种方式
查看>>