TC SRM498 Div1 1000PT(容斥原理+DP)】的更多相关文章

[\(Description\)] 网格中每步可以走\((0,\cdots M_x,0\cdots M_y)\)中任意非零向量,有\(K\)种向量不能走,分别是\((r_1,r_1),(r_2,r_2),\cdots , (r_K,r_K)\). \(r_i\)一定是\(10\)的倍数.求从\((0,0)\)走到\((Tx,Ty)\)且走\(R\)步的方案数( \(Tx,Ty,Mx,My\leq 800,R\leq 1600,K\leq 50\)) 无 [\(Input\;Sample\)] 无…
题目链接:http://codeforces.com/problemset/problem/245/H 题目大意:给你一个字符串s,对于每次查询,输入为一个数对(i,j),输出s[i..j]之间回文串的个数. 容斥原理: dp[i][j] = dp[i+1][j]+dp[i][j-1]-dp[i+1][j-1]; if( str[i]==str[j] 并且 str[i+1..j-1]是回文串 ) dp[i][j]++; 代码: #include <cstdio> #include <cs…
洛谷的传送门 bzoj的传送门 题意简述:在DAG中增加一条有向边,然后询问新图中一共 有多少个不同的子图为"树形图". 解法:容斥原理+dp,先考虑没有环的情况,经过尝试不难发现总的有向树个数就等于所有点的度数的乘积.而现在有了环,显然我们应该减去算多了的值.这样的话只需要简单的容斥原理就行了. 代码如下: #include<bits/stdc++.h> #define mod 1000000007 #define N 200005 #define M 400005 #d…
3622: 已经没有什么好害怕的了 题意:和我签订契约,成为魔法少女吧 真·题意:零食魔女夏洛特的结界里有糖果a和药片b各n个,两两配对,a>b的配对比b>a的配对多k个学姐就可能获胜,求方案数 PS:洛谷月赛拿到了一个Modoka的挂件O(∩_∩)O哈哈~ 总的方案数就是\(n!\),相当于一个做全排列 恰好多k个,那么就是a>b的有\(k=k+\frac{n-k}{2}\)个 恰好\(\rightarrow\)容斥 \[ =\ \ge k个的配对方案数\ -\ \ge k+1个\ +…
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1042 [题目大意] 硬币购物一共有4种硬币.面值分别为c1,c2,c3,c4. 某人去商店买东西,去了tot次.每次带di枚ci硬币, 买si的价值的东西.请问每次有多少种付款方法. [题解] 我们首先预处理出没有限制情况下不同容量的方案数,等价于一般的背包问题 之后对于硬币数量限制问题考虑容斥, 方案数等于无限制方案数-面值为c1的硬币超出限制的方案数-面值为c2的硬币超出限制的方…
Description Input Output Sample Input 4 2 5 35 15 45 40 20 10 30 Sample Output 4 HINT 输入的2*n个数字保证全不相同. 还有输入应该是第二行是糖果,第三行是药片 Sol 先把两个数组排序,能够把题目的分析难度降低一些. 然后我们求出\(r[i]\)表示b中小于\(a[i]\)的最靠右的位置,这样dp的时候就能够\(O(1)\)转移了. 设\(f[i][j]\)表示考虑了i位,至少有j个满足a>b的方案数. 显然…
题意 [题目链接]这怎么发链接啊..... Sol 枚举一个断点,然后类似于LIS一样dp一波 这个边界条件有点迷啊..fst了两遍... #include<bits/stdc++.h> using namespace std; const int MAXN = 1e5 + 10, INF = 1e9 + 7; inline int read() { char c = getchar(); int x = 0, f = 1; while(c < '0' || c > '9') {i…
当然是容斥啦. 用dp预处理出\( f[i] \),表示在\( i \)价格时不考虑限制的方案数,转移方程是\( f[i]+=f[i-c[j]] \),用状压枚举不满足的状态容斥一下即可. #include<iostream> #include<cstdio> using namespace std; const long long N=100005; long long c[10],T,d[10],s,f[N],ans; long long read() { long long…
题目描述 将\(n\times n\)的网格黑白染色,使得不存在任意一行.任意一列.任意一条大对角线的所有格子同色,求方案数对\(998244353\)取模的结果. 输入 一行一个整数\(n\). 输出 一行一个整数表示答案对\(998244353\)取模的值. 样例 样例输入 3 样例输出 32 数据范围 对于\(100\%\)的数据,\(1\leq n\leq 300\). 比第一题难了不知道多少-- 这种东西怎么看都是容斥嘛. 我们先考虑对角线没有限制的情况: 枚举行和列有多少个是同色的,…
题目传送门 https://atcoder.jp/contests/arc093/tasks/arc093_d 题解 由于不论 \(1\) 在哪个位置,一轮轮下来,基本上过程都是相似的,所以不妨假设 \(1\) 在第 \(1\) 个位置. 那么,\(1\) 将以此遇到的对手是 \(p_2, \min\{p_3, p_4\}, \min\{p_5, p_6, p_7, p_8\}, \cdots\). 令这些数分别为 \(b_0, b_1, \cdots\),其中 \(b_i = \min \li…