mtt

[模板] MTT实现之FFT拆系数

两盒软妹~` 提交于 2019-11-27 07:47:22
题目描述: 求两个多项式的卷积,系数对P取模,不保证P可以分解成 P = a ⋅ 2 k + 1 P = a ⋅ 2 k + 1 //--> 题目分析: P不保证分解成那个形式,那么我们就不可以用NTT了. 如何解决这个问题呢? 拆系数+FFT~ 基本上就是找个模数 然后拆成4个多项式,分别是第一个多项式 / 模数 %模数 第二个多项式 / 模数 %模数 的值 然后两两相乘,结果 乘上对应项数的模数次方然后%要取的模数 这样的话是做4次DFT,4次IDFT 然而单位复根的精度貌似会出问题 可以预处理,懒得话可以开long double 题目链接: Luogu 4245 Ac 代码: #include<cstdio> #include <cstdlib> #include <cstring> #include <cmath> #include <algorithm> #include <iostream> #define ll long long #define double long double const double PI= std :: acos (- 1 ); const int maxm= 5e5 + 100 ,M= 32768 ; struct complex { double real,imag; complex (){}; complex ( double

ACM算法总结 FFT与MTT

落爺英雄遲暮 提交于 2019-11-27 07:47:06
FFT 全称为 快速傅里叶变换 ,利用复数运算实现 DFT 与 IDFT 的快速算法,常用于多项式系数的卷积加速。 多项式表示方法一般有两种:系数表示和点值表示。 DFT 实际上对应系数到点值的变换, IDFT 对应点值到系数的变换。 FFT 采用分治的思想,结合 蝴蝶变换 化递归为迭代,通过取特殊点——复数域的单位根 ω n k \omega_n^k ω n k ​ (注意因果关系,分治的可行性是基于单位根的选取的)来实现时间复杂度为 O ( n l o g n ) O(nlogn) O ( n l o g n ) 的 DFT ,分治决定了 n n n 必须是二次幂。而这种特殊点下的点值表示,可以通过取 ω n − k \omega_n^{-k} ω n − k ​ 来实现 IDFT (最后要除以n)。(具体证明就不写啦) 代码: //n一定是2的幂,flag代表是DFT(1)还是IDFT(-1) void FFT(cp *a,int n,int flag) { for(int i=0;i<n;i++) if(i<r[i]) swap(a[i],a[r[i]]); for(int k=1;k<n;k<<=1) { cp w(1,0),wn(cos(pi/k),sin(pi*flag/k)),x,y; for(int i=0;i<n;i+=(k<<1),w=cp(1,0)) for

洛谷 P4245 【模板】MTT

被刻印的时光 ゝ 提交于 2019-11-27 07:46:56
题目描述 给定 2 个多项式 F(x),G(x) ,请求出 F(x)∗G(x) 。 系数对 p 取模,且不保证 p 可以分解成 p=a⋅2^k+1 之形式。 输入输出格式 输入格式: 输入共 3 行。 第一行 3 个整数 n,m,p ,分别表示 F(x),G(x) 的次数以及模数 p 。 第二行为 n+1 个整数, 第 i 个整数 a_i 表示 F(x) 的 i-1 次项的系数。 第三行为 m+1 个整数, 第 i 个整数 b_i 表示 G(x) 的 i-1 次项的系数。 输出格式: 输出 n+m+1 个整数, 第 i 个整数 c_i 表示 F(x) * G(x) 的 i-1 次项的系数。 输入输出样例 输入样例#1: 5 8 28 19 32 0 182 99 95 77 54 15 3 98 66 21 20 38 输出样例#1: 7 18 25 19 5 13 12 2 9 22 5 27 6 26 说明 1 ≤ n ≤ 10 5 , 0 ≤ a i , b i ≤ 10 9 , 2 ≤ p ≤ 10 9 + 9 , 1 ≤ n ≤ 10 5 1 ≤ n ≤ 10 5 , 0 ≤ a i , b i ≤ 10 9 , 2 ≤ p ≤ 10 9 + 9 , 1 ≤ n ≤ 10 5 //--> Solution 第一道拆系数FFT,被神奇错误卡了很久很久…… 把系数拆成 k M

预实验结果与试剂配比

六眼飞鱼酱① 提交于 2019-11-27 07:46:31
昨天做了MTT,测了光吸收值之后用SPSS24做了单因素方差分析。结果显示了不同强度之间的差异。由于细胞培养极易受到外界因素的影响,想要获得稳定统一的实验结果是很不容易的。明天将以5W/well的浓度接种一批细胞,频率设置为0.5 Hz、15Hz,强度设置为15% 、8%(相当于再次预试验),分别在第3/6天刺激后24h做MTT。做完第一批的MTT,确定了刺激强度再开始第二批的实验。14号接种,18号、21号分别做一批MTT。 来源: CSDN 作者: 暮涩 链接: https://blog.csdn.net/weixin_43595061/article/details/89288166

任意模数NTT(MTT)

末鹿安然 提交于 2019-11-27 07:45:17
前言 众所周知,NTT有几个经典的模数: 469762049 , 998244353 , 1004535809 469762049,998244353,1004535809 4 6 9 7 6 2 0 4 9 , 9 9 8 2 4 4 3 5 3 , 1 0 0 4 5 3 5 8 0 9 为什么这些模数被称为NTT模数呢?因为他们都是这样一个形式: P = 2 a ∗ X + 1 P=2^a*X+1 P = 2 a ∗ X + 1 为什么要有这样一个条件呢,因为只有这样,才能找到所需的原根 所以对于一般的一个模数 P = 2 a ∗ X + 1 P=2^a*X+1 P = 2 a ∗ X + 1 ,能适用的最大的多项式长度(包括结果)是 2 a 2^a 2 a 有时候, 给出的多项式长度超过限制,我们就不能用裸的NTT了 一般有两种情况: 模数是NTT模数,但是多项式长度略超出限制(比如模数是1004535809,输入多项式长度和>2097152) 模数不是NTT模数,比如模数是1000000007 这个时候任意模数NTT就非常有用了 正文 我们来分析任意模数NTT做法的思路 思路一(P不是很大的时候) 根据分析,我们发现,多项式长度为N、模数为P的时候,多项式乘法的结果每一项的值 0 ≤ x ≤ P 2 N 0\le x\le P^2N 0 ≤ x ≤ P 2 N

MTT PRocess

落爺英雄遲暮 提交于 2019-11-27 07:40:55
T with error 1 [fpxshyy@bogon rc]$ sudo yum install xfig [sudo] password for fpxshyy: 已加载插件:axelget, fastestmirror, langpacks repomd.xml | 951 B 00:00:00 update adobe-linux-x86_64 metadata successfully repomd.xml | 3.6 kB 00:00:00 base/group | 729 kB 00:00:01 base/primary | 2.5 MB 00:00:02 base/primary_db | 5.3 MB 00:00:11 update base metadata successfully epel/x86_64/metalink | 5.6 kB 00:00:00 repomd.xml | 4.3 kB 00:00:00 epel/group | 1.3 MB 00:00:05 epel/updateinfo | 523 kB 00:00:00 epel/primary | 2.7 MB 00:00:05 epel/primary_db | 4.0 MB 00:00:05 update epel metadata successfully repomd.xml

MTT和S-MTT 跟踪器阅读总结

冷暖自知 提交于 2019-11-27 07:40:21
文章:Robust Visual Tracking via Structured Multi-Task Sparse Learning 作者:Tianzhu Zhang · Bernard Ghanem · Si Liu ·Narendra Ahuja 来源:Int J Comput Vis (2013) 1. 总述 本文提出了MTT和S-MTT跟踪器,这两种跟踪器可以根据参数的不同生成好多个跟踪器。该跟踪器也是在粒子滤波的框架下,采用字典模板对粒子进行稀疏表示,最后选择重构误差最小的样本作为当前帧的跟踪目标。说到这里,大家肯定会想这不就是L1的跟踪器吗?对,没错,思想跟L1跟踪完全一样,并且文中证明L1跟踪器是本文方法的一种特殊情况。 本文的主要思想:作者把对每个粒子的表示看成单个任务,因而L1跟踪器对单个粒子每个粒子求得一个系数表示,因而它是单任务的。而文中作者任务,在每一帧图像中,由于所有的样本都是在上一帧的跟踪目标周围采样的,因而对这一帧中的所有任务,都应该是稀疏的,并且所用的字典模板应该是相同的。基于这样的思想,作者寻求一种对所有粒子的联合稀疏表示,这就是多任务学习思想,称为MTT方法,而联合稀疏表示的实现是通过添加约束Lp,q 范数实现的。进一步,作者认为空间距离较近的粒子应该具有更强的联合稀疏性约束,因而作者在MTT的基础上加入了图正则化约束,来实现结构多任务跟踪

mtt 有关 ghostview octave

不想你离开。 提交于 2019-11-27 07:38:21
1)octave :yum install epel-release yum install octave 2) ]$ mtt rc abg view MTT (Model Transformation Tools) version 4.8 ($Date: 2000/12/05 09:59:37 $) This is free software with ABSOLUTELY NO WARRANTY. Type `mtt warranty' for details. Creating view of rc_abg - ps file sh:行1: ghostview: 未找到命令 [fpxshyy@bogon rc]$ mtt rc abg view MTT (Model Transformation Tools) version 4.8 ($Date: 2000/12/05 09:59:37 $) This is free software with ABSOLUTELY NO WARRANTY. Type `mtt warranty' for details. Creating view of rc_abg - ps file sh:行1: ghostview: 未找到命令 [fpxshyy@bogon rc]$ yum install gv 已加载插件:axelget,

mtt 初见识

╄→尐↘猪︶ㄣ 提交于 2019-11-27 07:38:02
众里寻她千百度,MTT来入住! 费了好大劲,按照网站提示的方法配置了,mttrc .但运行还是提示未果!找不到路径的节奏!mtt_check_var cannot be find! 类。翻shell的书,环境变量输出的问题得到定位。 用分模块调式发现,进程没结束,一个shell程序内,设置的环境变量有效。推出进程,No!---定位之,进程shell变量--“linux shell 文件不能设置环境变量“,度之,见文献: **********************************************************************************88 http://blog.sina.com.cn/s/blog_623630d50102vdyk.html linux中shell脚本设置环境变量 (2014-12-05 22:16:58) 转载 ▼ 标签: 佛学 linux中shell脚本设置环境变量 怎样用脚本来设置环境变量 我想编一个脚本程序,用来对一组环境变量进行设置或取消 但由于脚本程序对变量的设置在退出脚本后就消失了,有没有间接办法能够实现这个功能? 你说的是 export ? 在脚本中使用export, 好像只在脚本中有效,退出这个脚本,设置的变量就没有了 在你的脚本中做设置 在~/.profile 或 ~/.bashrc 等

【总结】MTT算法

我与影子孤独终老i 提交于 2019-11-27 07:37:16
前言 51nod1258真是道好题。。。 一道题,学会了3个东西:伯努利数,自然数幂和,MTT… 前置科技(其实学MTT的人估计都会。。。) CRT(中国剩余定理) NTT NTT算法的局限 众所周知,NTT是通过原根的性质来进行快速傅里叶变化 不过,同时也对其模数做出了要求,对于一个模数M,若 φ ( M ) \varphi(M) φ ( M ) 中,2的次数较少(小于要转的序列长度)就不可做了 所以,也因此衍生出了“NTT模数”,即 φ ( M ) \varphi(M) φ ( M ) 中2的次数较多的模数。 常见的有: 998244353 = 2 23 ∗ 119 + 1 998244353=2^{23}*119+1 9 9 8 2 4 4 3 5 3 = 2 2 3 ∗ 1 1 9 + 1 , 1004535809 = 2 21 ∗ 479 + 1 1004535809=2^{21}*479+1 1 0 0 4 5 3 5 8 0 9 = 2 2 1 ∗ 4 7 9 + 1 , 469762049 = 2 26 ∗ 7 + 1 469762049=2^{26}*7+1 4 6 9 7 6 2 0 4 9 = 2 2 6 ∗ 7 + 1 (请至少记住这三个模数。。。因为后面要用。。。) 但是,有些无良的出题人,由于懒得想好题,于是就把一些比较简单的多项式题目中的模数换掉