[SOJ #48]集合对称差卷积】的更多相关文章

题目大意:给你两个多项式$A,B$,求多项式$C$使得: $$C_n=\sum\limits_{x\oplus y=n}A_xB_y$$题解:$FWT$ 卡点:无 C++ Code: #include <cstdio> #include <cctype> namespace __IO { int ch; inline int read() { while (isspace(ch = getchar())) ; return ch & 15; } } using __IO::…
题目大意:给你两个多项式$A,B$,求多项式$C$使得:$$C_n=\sum\limits_{x|y=n}A_xB_y$$题解:$FWT$,他可以解决形如$C_n=\sum\limits_{x\oplus y=n}A_xB_y$的问题,其中$\oplus$为位运算(一般为$or,and,xor$) or: void FWT(int *A) { for (int mid = 1; mid < lim; mid <<= 1) for (int i = 0; i < lim; i +=…
也许更好的阅读体验 本文主要内容是对武汉市第二中学吕凯风同学的论文<集合幂级数的性质与应用及其快速算法>的理解 定义 集合幂级数 为了更方便的研究集合的卷积,引入集合幂级数的概念 集合幂级数也是形式幂级数的一种,只是集合的一种表现形式,无需考虑收敛或发散的含义 定义一个集合 \(S\) 的集合幂级数为 \(f\) ,那么我们就可以把集合 \(S\) 表示为如下形式 \(\begin{aligned}f=\sum _{T\subseteq S}f_{T}\cdot x^{T}\end{align…
http://www.lydsy.com/JudgeOnline/problem.php?id=4036 http://blog.csdn.net/lych_cys/article/details/50898726 http://blog.csdn.net/qq_21995319/article/details/49800999 for(int i=1;i<=1;i++) for(int j=1;j<=1;j++) f[i○j]=a[i]*b[j]; 当○为按位或时,这种运算就称为集合并卷积.…
题意 给出 \(n\) 个数 \(\{a_1, \cdots, a_n\}\),从中选出两个互不相交的集合(不能都为空),使得第一个集合与第二个集合内的数的异或和相等,求总方案数 \(\bmod 998244353\) . \(n, a_i \le 10^6\) 题解 简单转化一下,其实就是对于每个选取集合中元素异或积为 \(0\) 的集合,都会有 \(2^{|S|}\) 的贡献. 用集合幂级数形式写出来其实就等价于: \[ \prod_{i = 1}^{n} (1 + 2x^{a_i}) \]…
我理解的FWT是在二元运算意义下的卷积 目前比较熟练掌握的集合对称差卷积 对于子集卷积和集合并卷积掌握不是很熟练(挖坑ing) 那么就先来谈一谈集合对称差卷积吧 所谓集合对称差卷积 就是h(i)=sigma(g(j)*f(k))(j^k=i) 首先一个很显然的事情是如下结论: 证明就是如果S是空集,答案为1,否则设存在元素v,则(S交T)和(S交T^v)两两相消配对 答案为0 由于j^k=i,则一定存在j^k^i=0,所以我们可以用上面的式子化简卷积 式子的化简显然是正确的,就是将判断符号带入之…
这篇文章在讲什么 相信大家都会FWT和FMT. 如果你不会,推荐你去看一下VFK的2015国家集训队论文. 设全集为\(U=\{1,2,\ldots,n\}\),假设我们关心的\(f_S\)中的集合\(S\)是\(U\)的子集. 给你\(c_i,d_i\),令 \[ b_i=(1+c_ix^{d_i}) \] 求 \[ g=\prod_{i}b_i \] 其中两个集合幂级数的乘积为集合并卷积(or)/集合对称差卷积(xor)中的一种. 不妨设\(d_S\)互不相同(否则可以用DP/组合数什么的搞…
pthon/零起点(一.集合) set( )集合,集合是无序的,集合是可变的,集合是可迭代的 set()强型转成集合数据类型 set()集合本身就是去掉重复的元素 集合更新操作案列: j={1,2,3,4,5} #创建一个集合 l={4,5,6,7,8} #创建一个集合 l.update(j) #更新集合 print(l) ------------------------------- 运行结果: {1, 2, 3, 4, 5, 6, 7, 8} Process finished with ex…
本文参考了 Dance of Faith 大佬的博客 我们定义集合并卷积 \[ h_{S} = \sum_{L \subseteq S}^{} \sum_{R \subseteq S}^{} [L \cup R = S] f_{L} * g_{R} \] 最暴力的时候只能 \(O(4^n)\) 完成,进行 一些优化 可以在 \(O(3^n)\) 内完成,当然我们可以在 \(O(n 2^n)\) 利用 \(FMT\) 或者 \(FWT\) 内快速处理. \(FMT\) 原理更好理解,就介绍此种方式…
求不相交集合并卷积 sol: 集合并卷积?看我 FWT! 交一发,10 以上的全 T 了 然后经过参考别人代码认真比对后发现我代码里有这么一句话: rep(s, , MAXSTATE) rep(i, , n) rep(j, , n - i) h[i + j][s] = inc(h[i + j][s], mul(f[i][s], g[j][s])); 把它改成 rep(i, , n) rep(j, , n - i) rep(s, , MAXSTATE) h[i + j][s] = inc(h[i…
Python的核心数据类型 内置对象 对象类型 例子 数字 123,3.1415,3+4j,Decimal(小数),Fraction(分数) 字符串 'dodo',"guido's",b'a\xolc' 列表 [1,[2,'three'],4] 字典 {'food':'apple','name':'dodo'} 元组 (1,'dodo',''4,'A') 文件 fp=open('test','r') 集合 set('abc'),{'a','b','c'} 其他类型 type,None,…
#定义集合:{},集合是只有key没有value的字典,集合内元素不能重复!a={1,2,3,4,5,6}#列表转换成集合b=set([1,2,3,4,5])print(a,b) #集合对列表进行去重list1=[1,1,2,2,3,4,5,6,7,8]#转换成集合x=set(list1)#还原成列表y=list(x)print(y) #集合运算 c={1,2,3,4,5,6,7}d={4,5,6,7,8,9,0}#集合差(在C集合中去掉共有元素)print(c-d)#集合并(合并两集合的所有元…
4.1 表的加减法 4.1.1 什么是集合运算 集合在数学领域表示"各种各样的事物的总和", 在数据库领域表示记录的集合. 具体来说,表.视图和查询的执行结果都是记录的集合, 其中的元素为表或者查询结果中的每一行. 在标准 SQL 中, 分别对检索结果使用 UNION, INTERSECT, EXCEPT 来将检索结果进行并,交和差运算, 像UNION,INTERSECT, EXCEPT这种用来进行集合运算的运算符称为集合运算符. 以下的文氏图展示了几种集合的基本运算. [图片来源于网…
先安利一下这套比赛,大概是doreamon搞的,每周五晚上有一场,虽然没人做题目质量挺高的 http://codeforces.com/group/gRkn7bDfsN/contests(报名前要先报名group,不用审核) 每一次的题解可以在这里看到 http://dreamoon4.blogspot.tw/(梯子自备) 这场是http://codeforces.com/group/gRkn7bDfsN/contest/210418 这一场是类似之前某一场cf把每题拆成几个数据规模的题目分别给…
爆炸了QAQ 传送门 \(A\) \(Mas\)的童年 这题我怎么感觉好像做过--我记得那个时候还因为没有取\(min\)结果\(100\to 0\)-- 因为是个异或我们肯定得按位考虑贡献了 把\(a\)做个前缀异或和,记为\(s_i\),那么就是要找到 \[\max_{j<i}\{s_j+(s_j\oplus s_i)\}\] 我们假设\(s_i\)第\(k\)位为\(a\),\(s_j\)第\(k\)位为\(b\),\(s_j+(s_j\oplus s_i)\)第\(k\)位为\(c\)…
目录 19.1. 前言 19.2. OpenGIS几何模型 19.2.1. Geometry类的层次 19.2.2. 类Geometry 19.2.3. 类Point 19.2.4. 类Curve 19.2.5. 类LineString 19.2.6. 类Surface 19.2.7. 类Polygon 19.2.8. 类GeometryCollection 19.2.9. 类MultiPoint 19.2.10. 类MultiCurve 19.2.11. 类MultiLineString 19…
Google Inception Net,ILSVRC 2014比赛第一名.控制计算量.参数量,分类性能非常好.V1,top-5错误率6.67%,22层,15亿次浮点运算,500万参数(AlexNet 6000万).V1降低参数量目的,参数越多模型越庞大,需数据量越大,高质量数据昂贵:参数越多,耗费计算资源越大.模型层数更深,表达能力更强,去除最后全连接层,用全局平均池化层(图片尺寸变1x1),参数大减,模型训练更快,减轻过拟合(<Network in Network>论文),Inceptio…
python中的数字类型工具 python中为更高级的工作提供很多高级数字编程支持和对象,其中数字类型的完整工具包括: 1.整数与浮点型, 2.复数, 3.固定精度十进制数, 4.有理分数, 5.集合, 6.布尔类型 7.无穷的整数精度 8.各种数字内置函数及模块. 基本数字类型 python中提供了两种基本类型:整数(正整数金额负整数)和浮点数(注:带有小数部分的数字),其中python中我们可以使用多种进制的整数.并且整数可以用有无穷精度. 整数的表现形式以十进制数字字符串写法出现,浮点数带…
题目描述 给你\(n,k\),要你选一些互不相同的正整数,满足这些数的\(lcm\)为\(n\),且这些数的和为\(k\)的倍数. 求选择的方案数.对\(232792561\)取模. \(n\leq {10}^{18},k\leq 20\),\(n\)的全部质因子都\(\leq 100\) 题解 解法一 一个\(\leq {10}^{18}\)的数最多有\(15\)不同的质因子. 记\(w=15,m=2^w=32768\) 先看看这个模数有什么特点. \(p=232792561=lcm(1,2,…
Vfk的集合幂级数论文的例题….随机集合并为全集的期望集合数….这篇题解里的东西基本来自vfk的论文. 首先根据期望的线性性,我们把需要走第1步的概率(一定为1)加上需要走第2步的概率(等于走了第一步之后没有得到全集的概率)加上需要走第3步的概率(等于走了两步之后没有得到全集的概率)….一直加到需要走正无穷步的概率就是期望的步数.那么走了x步之后没有得到全集的概率等于走了x步之后得到不是全集的集合的概率之和.那么我们用集合并卷积定义乘法,把给出的概率视作集合幂级数,求集合幂级数的等比数列之和,把…
目录: 1.2. 数字 1.2.1. 数字类型 1.2.2. 浮点数 1.2.3. 进制记数 1.2.4. 设置小数精度 1.2.5. 分数 1.2.6. 除法 1.2 数字   1.2.1 数字类型 python 内置可以处理大部分常见的数字类型,比如整数,浮点数. 还有一些模块包括更高级的数学工具.第三方开源扩展领域还包含了更多的类型(矩阵生向量). python数字类型包含: 整数与浮点数 复数 固定精度的十进制 有理分数 集合 布尔 无穷的整数精度 各种数字内置函数和模块 Table 1…
辅助函数 slim.arg_scope() slim.arg_scope可以定义一些函数的默认参数值,在scope内,我们重复用到这些函数时可以不用把所有参数都写一遍,注意它没有tf.variable_scope()划分图结构的功能, with slim.arg_scope([slim.conv2d, slim.fully_connected], trainable=True, activation_fn=tf.nn.relu, weights_initializer=tf.truncated_…
Summary 我的理解就是原本节点和节点之间操作是离散的,因为就是从若干个操作中选择某一个,而作者试图使用softmax和relaxation(松弛化)将操作连续化,所以模型结构搜索的任务就转变成了对连续变量\(α={α^{(i,j)}}\)以及\(w\)的学习.(这里\(α\)可以理解成the encoding of the architecture). 之后就是迭代计算\(w\)和\(α\),这是一个双优化问题,具体处理细节参见3.Approximation Research Object…
目录 写在前面 一类反演问题 莫比乌斯反演 快速莫比乌斯变换(反演)与子集卷积 莫比乌斯变换(反演) 子集卷积 二项式反演 内容 证明 应用举例 另一形式 斯特林反演 第一类斯特林数 第二类斯特林数 反演公式 最值反演( \(\text{min-max}\) 容斥) 公式 证明 拉格朗日插值法 简介 求解 自然数的幂的前缀和 问题提出 问题解决 代码实现 写在前面 这是继数论和组合计数类数学相关与多项式类数学相关后的第三篇数学方面内容总结.主要记录自己近期学习的一些数学方法.内容比较杂,同时也起…
Portal --> 出错啦qwq(好吧其实是没有) Description 给定两个正整数\(n,k\),选择一些互不相同的正整数,满足这些数的最小公倍数恰好为\(n\),并且这些数的和为\(k\)的倍数 求选择的方案数对\(232792561\)取模 数据范围:多组数据,组数\(T<=10,n<=10^{18},k<=20\),且\(n\)的所有质因子不大于\(100\) Solution 这题..好神仙啊qwq敲爆脑子都想不出来系列qwq 注意到\(n<=10^{18}…
很裸的子集反演模板题,套上一些莫名其妙的外衣. 先预处理每个集合是否合法,再作显然的状压DP.然后发现可以写成子集反演的形式,直接套模板即可. 子集反演可以看这里. 子集反演的过程就是多设一维代表集合大小,再FMT处理集合并卷积. 然而我的FMT常数过大,而并卷积又可以用FWT实现,于是就写FWT了.(实际上就三行的区别) #include<cstdio> #include<algorithm> #include<cstring> #define rep(i,l,r)…
#链接:http://www.jianshu.com/p/a70c1d931395 import tensorflow as tf import tensorflow.contrib.slim as slim # tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, name=None) # 除去name参数用以指定该操作的name,与方法有关的一共五个参数: # # input: # 指需要做卷积的输入图像,它…
题目链接:小星星 首先有个暴力很好想.令\(f_{i,j,S}\)表示把\(i\)这棵子树对应到原图中的\(S\)集合,\(i\)号点对应到了\(j\)号点的方案数.这玩意儿复杂度是\(O(3^nn^3)\)的,但是稍微加点优化就能有\(40\)分. 然后看看这个转移的方程,实际上就是集合或卷积.于是我们就可以优化转移了,总复杂度就变成了\(O(2^nn^4)\). 然后我们发现,我们完全可以\(dp\)的整个过程都在\(n\)维前缀和类似物下进行,最后再用差分类似物弄回来就可以了.于是复杂度成…
题意 题目描述 给定长度为\(2^n\)两个序列\(A,B\),设\(C_i=\sum_{j\oplus k}A_jB_k\)分别当\(\oplus\)是or,and,xor时求出C 输入输出格式 输入格式: 第一行一个数n. 第二行\(2^n\)个数\(A_0..A_{2^n-1}\)第三行\(2^n\)个数\(B_0..B_{2^n-1}\) ​ 输出格式: 三行每行\(2^n\)个数,分别代表\(\oplus\)是or,and,xor时\(C_0..C_{2^n-1}\)的值\(\bmod…
卷积神经网络 LeNet-5各层参数详解 LeNet论文阅读:LeNet结构以及参数个数计算     LeNet-5共有7层,不包含输入,每层都包含可训练参数:每个层有多个Feature Map,每个FeatureMap通过一种卷积滤波器提取输入的一种特征,然后每个FeatureMap有多个神经元. 1. C1层是一个卷积层 输入图片:32*32 卷积核大小:5*5 卷积核种类:6 输出featuremap大小:28*28 (32-5+1) 神经元数量:28*28*6 可训练参数:(5*5+1)…