摘要: 第i个位置的牌是a[i],一次交换后第i个位置的牌变成a[a[i]]。序列所有位置经过一次交换为一次交换, 已知交换m次之后的序列,求原先序列 思路: 给出a[i]为4 7 5 6 1 2 3 进行一次变换 1 2 3 4 5 6 7 4 7 5 6 1 2 3 1 2 3 4 5 6 7 * =4 阅读全文
posted @ 2020-01-02 16:02 我微笑不代表我快乐 阅读(133) 评论(0) 推荐(0) 编辑
摘要: Byteasar 有一堆n 张牌想洗牌. 牌的位置从1 到 n编号. 一张在位置k的卡(1 <= k <= n) 下一次总是会到ak位置上. 我们定义bk 为Byteasar洗了l次牌后第k张牌的最终位置(初始时在位置k上的牌). 我们想知道初始的a序列。Input第一行有两个整数n和 l (1 < 阅读全文
posted @ 2020-01-01 20:54 我微笑不代表我快乐 阅读(120) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3128 大致题意:输入一串含26个大写字母的字符串,可以把它看做一个置换,判断这个置换是否是某个置换的平方 可以先正着考虑一个置换的平方出现什么情况。对于置换中的循环,若其长度为偶数Len,平方以后一定分成了两个长度相等,值为Len/2,其值可奇 阅读全文
posted @ 2019-12-31 23:43 我微笑不代表我快乐 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 一段长度为n的序列,你有红黄蓝绿四种颜色的砖块,一块砖长度为1,问你铺砖的方案数,其中红黄颜色之和必须为偶数。 #include <queue> #include <stack> #include <cmath> #include <cstdio> #include <string> #includ 阅读全文
posted @ 2019-12-19 11:21 我微笑不代表我快乐 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 例题:Loj165 #include <bits/stdc++.h> using namespace std; typedef long long int64; const int MOD = 998244353; const int MAXN = 5000 + 10; inline int qpo 阅读全文
posted @ 2019-12-16 15:12 我微笑不代表我快乐 阅读(1408) 评论(0) 推荐(0) 编辑
摘要: 拉格朗日插值入门由小学知识可知,n个点(x_i,y_i)可以唯一地确定一个多项式现在,给定n个点,请你确定这个多项式,并将k代入求值求出的值对998244353取模Input第一行两个正整数n,k,含义如题接下来n行,每行两个正整数x_i,y_i含义如题。n≤2000,xi,yi,k≤9982443 阅读全文
posted @ 2019-12-15 20:27 我微笑不代表我快乐 阅读(2091) 评论(0) 推荐(0) 编辑
摘要: 先用这个方法顶一下! 阅读全文
posted @ 2019-12-13 18:14 我微笑不代表我快乐 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 详情见:https://riteme.site/blog/2016-11-29/delta-and-stirling.html 注意:从h0开始 例如求sigma(N^3),0<=N<=4,易知ans=100 因为表达式最高指数为3,所以第一行给出前4项,注意从h0开始 0 1 8 27 1 7 1 阅读全文
posted @ 2019-12-12 16:34 我微笑不代表我快乐 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 分析: ①当n<2r时,取法为0种 例如4个球围一圈,选互不相邻的3个球,找不到这样的组合 ①当n>=2r时,取法为C(n-r,r)n/(n-r)种 首先对球进行编号,1号~n号,对于任何可能的组合,都只有两种情况:包含1号球的和不包含1号球的。 包含1号球:首先选出1号球,然后需要从3号球~n-1 阅读全文
posted @ 2019-12-12 10:37 我微笑不代表我快乐 阅读(828) 评论(0) 推荐(0) 编辑
摘要: 参考资料: https://hyscere.github.io/2019/09/05/%E6%89%A9%E5%B1%95Caylay%E5%AE%9A%E7%90%86/ https://www.cnblogs.com/jklover/p/10391064.html n个标号节点形成一个有k颗树的 阅读全文
posted @ 2019-12-11 16:51 我微笑不代表我快乐 阅读(232) 评论(0) 推荐(0) 编辑
摘要: https://blog.csdn.net/qq_39791208/article/details/79079117 有空来研究 阅读全文
posted @ 2019-12-11 16:42 我微笑不代表我快乐 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 让你求一个两边各有n和m个点的完全二分图有多少个生成树。 这是一道比较经典的利用prufer序列结论求解答案的计数题。 大致思路考虑一张二分图求解prufer序列,由于prufer序列求解时最后剩下的两个点必定有边相连,因此这两个点必定在二分图两侧。由于prufer序列中记录的是每个点相邻的点,也就 阅读全文
posted @ 2019-12-11 16:40 我微笑不代表我快乐 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 一个有n个结点的树,设它的结点分别为v1, v2, …, vn,已知第i个结点vi的度数为di, 问满足这样的条件的不同的树有多少棵。给定n,d1, d2, …, dn,编程需要输出满足d(vi)=di的树的个数。 Input 第一行是一个正整数n,表示树有n个结点。第二行有n个数,第i个数表示di 阅读全文
posted @ 2019-12-11 16:31 我微笑不代表我快乐 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 自从明明学了树的结构,就对奇怪的树产生了兴趣...... 给出标号为1到N的点,以及某些点最终的度数,允许在任意两点间连线,可产生多少棵度数满足要求的树?Input第一行为N(0 < N < = 1000)接下来N行,第i+1行给出第i个节点的度数Di,如果对度数不要求,则输入-1Output一个整 阅读全文
posted @ 2019-12-11 16:02 我微笑不代表我快乐 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 图解说明可见:https://www.cnblogs.com/Jackpei/p/10827653.html Sol: 找到标号最小的叶子点a,再找到与之相连的点b.删除a及ab之间边。同时记下b的值。得到一个长度为N-2的序列。序列中每个数字,其值在[1,N]之间 所以有N^(N-2)种方案,每种 阅读全文
posted @ 2019-12-11 11:26 我微笑不代表我快乐 阅读(242) 评论(0) 推荐(0) 编辑
摘要: Sol: 对月份进行枚举,也就是说看在这些月份中,N行中,有哪些行是两两相等的至于判相等,则使用Hash表进行存储与查找. #include<cstdio> #include<iostream> #include<algorithm> #include<cstring> #define ll lon 阅读全文
posted @ 2019-12-10 22:02 我微笑不代表我快乐 阅读(147) 评论(0) 推荐(0) 编辑
摘要: https://blog.csdn.net/Maxwei_wzj/article/details/80152116 对变量有上界限制及下界限制。对于下界,可以从总数中减去即可,对于上界,容斥定理。 阅读全文
posted @ 2019-12-10 20:51 我微笑不代表我快乐 阅读(89) 评论(0) 推荐(0) 编辑
摘要: BZOJ 3198 [Sdoi2013]spring...........hash+广义容斥定理BZOJ 2024 [SHOI2009] 舞会..........入门级BZOJ 2839 集合计数..........入门级BZOJ 4558 [JLoi2016]方BZOJ 4559 - [JLOI2 阅读全文
posted @ 2019-12-10 19:57 我微笑不代表我快乐 阅读(78) 评论(0) 推荐(0) 编辑
摘要: OItown要举办了一年一度的超级舞会了,作为主办方的Constantine为了使今年的舞会规模空前,他邀请了许多他的好友和同学去。舞会那天,恰好来了n个男生n个女生。Constantine发现,一般情况下,舞伴之间,总是男伴总是比女伴长得高,不过,偶尔也是有特殊情况的。所以,Constantine 阅读全文
posted @ 2019-12-10 16:59 我微笑不代表我快乐 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://www.cnblogs.com/adelalove/p/9915175.html由于逆元是完全积性函数即f(m*n)=f(m)*f(n)于是f(i+1)=1'*2'*........*i'*(i+1)'左右两边同时乘上(i+1)左边得到f(i+1)*(i+1)右边得到1'*2 阅读全文
posted @ 2019-12-08 15:55 我微笑不代表我快乐 阅读(185) 评论(0) 推荐(0) 编辑
摘要: Sol1:利用杨辉三角求C(N,M).坐标从 (0,0)开始,则第n行第m列就是C(N,M) #include<bits/stdc++.h> #define s 1100 using namespace std; int x[s][s]; main() { int a,b,k,n,m; x[0][0 阅读全文
posted @ 2019-12-08 11:30 我微笑不代表我快乐 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 1:如果x,y,z>=0,则直接插板法c(P+3,3-1)2:如果x,y,z均有下界a1,a2,a3,则求解方程x+y+z=P-a1-a2-a33:如果x,y,z均有上界的自然数,则使用容斥定理4:方程为x+y+z<=P,x,y,z为自然数,则直接插板法c(P+3,3)5:方程为x+y+z<=P,如 阅读全文
posted @ 2019-12-07 17:56 我微笑不代表我快乐 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 《基尔伽美修》是人类历史上第一部英雄史诗,两河流域最杰出的文学作品之一。作品讲述了基尔伽美修一生的传奇故事。在动画Fate/staynight中,基尔伽美修与亚瑟王等传说中的英雄人物一起出现在了现实世界,展开了一场惊天地、泣鬼神的战斗一·在记载于12块泥板的史诗中,基尔伽美修与同伴安吉杜一起降伏了森 阅读全文
posted @ 2019-12-05 21:04 我微笑不代表我快乐 阅读(235) 评论(0) 推荐(0) 编辑
摘要: #include<cstdio> #include<algorithm> #include<cmath> #include<map> using namespace std; typedef long long ll; ll p,a,b; ll ksm(ll x,ll y) { ll res=1; 阅读全文
posted @ 2019-12-05 18:14 我微笑不代表我快乐 阅读(161) 评论(0) 推荐(0) 编辑
摘要: 题目大意:John得到了n罐糖果。不同的糖果罐,糖果的种类不同。第i个糖果罐里有 mi个糖果。John决定吃掉一些糖果,他想吃掉至少a个糖果,但不超过b个。问题是John 无法确定吃多少个糖果和每种糖果各吃几个。有多少种方法可以做这件事呢? 题解这种有数量限制的方案问题多数都可以用生成函数解决。 # 阅读全文
posted @ 2019-12-05 12:03 我微笑不代表我快乐 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 关于(1+x+x2+x3+x4+...)^k的第i项系数就是c(i+k−1,k−1)的证明对于第i项,假设为5x^5=x^0*x^5x^5=x^1*x^4x^5=x^2*x^3........也就是说从k个这样(1+x+x^2+x^3+x^4+...)的式子中,每个式子取出一项出来让其相乘,得到的x 阅读全文
posted @ 2019-12-04 11:33 我微笑不代表我快乐 阅读(521) 评论(0) 推荐(0) 编辑
摘要: 一天,CC买了N个容量可以认为是无限大的瓶子,开始时每个瓶子里有1升水。接着~~CC发现瓶子实在太多了,于是他决定保留不超过K个瓶子。每次他选择两个当前含水量相同的瓶子,把一个瓶子的水全部倒进另一个里,然后把空瓶丢弃。(不能丢弃有水的瓶子)显然在某些情况下CC无法达到目标,比如N=3,K=1。此时C 阅读全文
posted @ 2019-11-22 18:45 我微笑不代表我快乐 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 题意:N座高楼,高度均不同且为1~N中的数,从前向后看能看到F个,从后向前看能看到B个,问有多少种可能的排列数。 0 < N, F, B <= 2000 首先我们知道一个结论:n的环排列的个数与n-1个元素的排列的个数相等,因为P(n,n)/n=(n-1)!。 可以肯定,无论从最左边还是从最右边看, 阅读全文
posted @ 2019-11-21 20:59 我微笑不代表我快乐 阅读(104) 评论(0) 推荐(0) 编辑
摘要: /* S(n^k)=1^k+2^k+3^k+...+n^k; (n+1)^3=n^3+3*n^2+3*n+1; (n+1)^3-n^3=3*n^2+3*n+1; n^3-(n-1)^3=3*(n-1)^2+3*(n-1)+1; ... ... ... ... 2^3-1^3=3*1^2+3*1+1; 阅读全文
posted @ 2019-11-21 20:52 我微笑不代表我快乐 阅读(1487) 评论(0) 推荐(0) 编辑
摘要: 求方程x1+x2+x3=15的整数解的数目要求0≤x1≤5,0≤x2≤6,0≤x3≤7。解:令N为全体非负整数解(x1,x2,x3),A1为其中x1≥6的解;y1=x1-6≥0的解;A2为其中x2≥7的解;y2=x2-7≥0的解;A3为其中x3≥8的解。y3=x3-8≥0的解 A1的个数,相当于对( 阅读全文
posted @ 2019-11-21 16:47 我微笑不代表我快乐 阅读(3044) 评论(0) 推荐(0) 编辑
摘要: JYY 带队参加了若干场ACM/ICPC 比赛,带回了许多土特产,要分给实验室的同学们。 JYY 想知道,把这些特产分给N 个同学,一共有多少种不同的分法?当然,JYY 不希望任何一个同学因为没有拿到特产而感到失落,所以每个同学都必须至少分得一个特产。例如,JYY 带来了2 袋麻花和1 袋包子,分给 阅读全文
posted @ 2019-11-21 15:54 我微笑不代表我快乐 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 题意: 给定一个H*W的棋盘,棋盘上只有N个格子是黑色的,其他格子都是白色的。在棋盘左上角有一个卒,每一步可以向右或者向下移动一格,并且不能移动到黑色格子中。求这个卒从左上角移动到右下角,一共有多少种可能的路线。 输入格式 第1行:3个正整数h,w,n(1≤h,w≤10^5,1≤n≤2000)接下来 阅读全文
posted @ 2019-11-21 12:37 我微笑不代表我快乐 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 有糖果和药片各n个。糖果ii有能量ai,药片i有能量bi。 你需要将药片和糖果两两配对,求有多少种方案满足糖果比药片能量大的组数减去药片比糖果能量大的组数恰好为k。保证所有的能量两两不同,答案对109+9取模。Input Format#第一行两个整数n,k第二行n个整数,表示糖果的能量。第三行n个整 阅读全文
posted @ 2019-11-21 11:23 我微笑不代表我快乐 阅读(236) 评论(0) 推荐(0) 编辑
摘要: zz:https://www.cnblogs.com/Parsnip/p/11530658.html 一个有N个元素的集合有2^N个不同子集(包含空集),现在要在这2^N个集合中取出若干集合(至少一个),使得 它们的交集的元素个数为K,求取法的方案数,答案模1000000007。(是质数喔~)Inp 阅读全文
posted @ 2019-11-19 20:33 我微笑不代表我快乐 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 其实就是让两个点,看谁的深度大,谁就先跳。直到两个点的top顶点一致时,此时谁的深度小谁就是Lca. zz:https://www.cnblogs.com/rir1715/p/7668338.html 树剖就是把树剖分成若干条不相交的链,目前常用做法是剖成轻重链 所以我们定义siz[x]为以x为根结 阅读全文
posted @ 2019-11-18 20:18 我微笑不代表我快乐 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 给出一棵树求K级祖先。O(N*logN+Q) 更详细的讲解见:https://www.cnblogs.com/cjyyb/p/9479258.html /* 要求k级祖先,我们可以把k拆成"2^highbit(x)+tmp 形式 (highbit(x)为x在二进制位下的最高位),然后用倍增的方法把h 阅读全文
posted @ 2019-11-18 20:06 我微笑不代表我快乐 阅读(168) 评论(0) 推荐(0) 编辑
摘要: Harry Potter新学了一种魔法:可以改变树上的果子个数。满心欢喜的他找到了一个巨大的果树,来试验他的新法术。这棵果树共有N个节点,其中节点0是根节点,每个节点u的父亲记为fa[u],保证有fa[u]<u。初始时,这棵果树上的果子都被Dumbledore用魔法清除掉了,所以这个果树的每个节点都 阅读全文
posted @ 2019-11-14 16:04 我微笑不代表我快乐 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 一棵结点为黑色或白色的树,初始都是白色的。有两种操作 1 将一个结点换颜色 2 询问从根到结点u路径上面的第一个黑色点,没有则输出-1 InputIn the first line there are two integers N and Q. In the next N-1 lines descr 阅读全文
posted @ 2019-11-14 15:47 我微笑不代表我快乐 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个操作,分为三种:操作 1 :把某个节点 x 的点权增加 a 。操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。操作 3 :询问某个节点 x 到根的路径中所有点的点权和。Input第一行包含两个整数 N, M 。表示 阅读全文
posted @ 2019-11-14 15:29 我微笑不代表我快乐 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 大致题意: 维护一棵树,支持两种操作: P x y x到y路径上的每条边的值+1;Q x y 询问x到y路径上所有边的值的和。Input第一行两个正整数,N,M表示点数和操作数;接下来N-1行每行两个数表示一条边;接下来M行表示M个操作,每行形如P x y或Q x y。2≤N≤100,000,1≤M 阅读全文
posted @ 2019-11-14 15:17 我微笑不代表我快乐 阅读(135) 评论(0) 推荐(0) 编辑