![](https://img-blog.csdnimg.cn/20190927151026427.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
线性dp
文章平均质量分 79
qq_43520313
这个作者很懒,什么都没留下…
展开
-
Imprecise Computer
题目https://codeforces.com/gym/102920/problem/E有两轮操作,每一轮,让1∼n1\sim n1∼n中的每个数字kkk和其他所有数字进行比较大小,如果两个数字之差大于等于222则能正确的比较大小,否则随机认为某个数字大,令ri(k)r_i(k)ri(k)为第iii轮时比kkk小的数字的个数,则dk=∣r1(k)−r2(k)∣d_k=|r_1(k)-r_2(k)|dk=∣r1(k)−r2(k)∣,现在给定ddd数组,问你经过两轮操作后是否可能出现ddd数组这种原创 2021-03-15 19:50:47 · 95 阅读 · 0 评论 -
整数划分 V2
题目:将NNN分为若干个整数的和,有多少种不同的划分方式,例如:n=4n = 4n=4,{4}{1,3}{2,2}{1,1,2}{1,1,1,1}\{4\} \{1,3\} \{2,2\} \{1,1,2\} \{1,1,1,1\}{4}{1,3}{2,2}{1,1,2}{1,1,1,1},共555种。由于数据较大,输出mod 109+7mod\;10^9 + 7mod109+7的结果即可。思路:参考问题分成两部分计算...原创 2020-11-08 21:05:24 · 77 阅读 · 0 评论 -
Sum of Powers
题目:https://csacademy.com/contest/round-32/task/sum-of-powers/给定NNN,MMM,KKK,考虑所有的多重子集{a1,a2,a3...ak}\{a_1,a_2,a_3...a_k\}{a1,a2,a3...ak},满足a1+a2+...+ak=Na_1+a_2+...+a_k=Na1+a2+...+ak=N,求所有的多重子集的a1M+a2M+...akMa_1^M+a_2^M+...a_k^Ma1M+a2M+...akM。思原创 2020-11-08 10:45:14 · 235 阅读 · 0 评论 -
整数划分
** 题目:**http://www.51nod.com/Challenge/Problem.html#problemId=1201将NNN分为若干个不同整数的和,有多少种不同的划分方式,例如:n=6n = 6n=6,{6}{1,5}{2,4}{1,2,3}\{6\} \{1,5\} \{2,4\} \{1,2,3\}{6}{1,5}{2,4}{1,2,3},共444种。由于数据较大,输出mod 109+7mod\;10^9 + 7mod109+7的结果即可。思路:https://blog.cs原创 2020-11-08 09:41:18 · 166 阅读 · 0 评论 -
「2017 山东一轮集训 Day7」逆序对
题目:https://loj.ac/problem/6077给定n,kn,kn,k ,请求出长度为nnn的逆序对数恰好为kkk的排列的个数。答案对109+710^9+7109+7取模。思路1:设aia_iai为数字iii对逆序数的贡献,则0≤ai≤i−10\le a_i\le i-10≤ai≤i−1。并且只要所有aia_iai满足该条件,都一定能构造出唯一的排列。所以问题变成有多少方案使得∑i=1nai=k,0≤ai≤i−1\sum_{i=1}^{n}a_i=k,0\le a_i\le i-原创 2020-11-07 21:02:05 · 230 阅读 · 0 评论 -
特殊背包
题目:有nnn个物品,第iii个物品的体积为iii,问有多少种方案凑成mmm体积。思路:如果正常背包,时间复杂度O(nm)O(nm)O(nm)。由于体积刚好是连续的,所以合法的方案等价于有多少种递减序列,数字和为mmm。可以这样构造递减序列,每次有两种决策。当前序列中的所有数字加111当前所有数字加111,并且在序列后放入数字111所以令f(i,j)f(i,j)f(i,j)表示当前有iii个数字,和为j且是递减序列的方案数,则f(i,j)=f(i−1,j−i)+f(i,j−i)f(i原创 2020-11-07 13:06:17 · 138 阅读 · 0 评论 -
背包方案数
题目:有nnn种物品,每种物品的体积为viv_ivi,有cic_ici个,问放入容量为mmm的背包有多少种方案。思路:除了可以用类似单调队列来维护决策之外还可以用容斥。设f(i,j)f(i,j)f(i,j)表示前iii个物品凑成体积为jjj的方案数,则有f(i,j)=f(i−1,j)+f(i,j−vi)−f(i−1,j−(ci+1)vi)f(i,j)=f(i-1,j)+f(i,j-v_i)-f(i-1,j-(c_i+1)v_i)f(i,j)=f(i−1,j)+f(i,j−vi)−f(i−原创 2020-11-06 19:11:04 · 67 阅读 · 0 评论 -
有限背包计数问题
题目:http://www.51nod.com/Challenge/Problem.html#problemId=1597你有一个大小为nnn的背包,你有nnn种物品,第iii种物品的大小为iii,且有iii个,求装满这个背包的方案数有多少。n≤105n\le 10^5n≤105思路:传送门传送门...转载 2020-11-05 12:56:59 · 114 阅读 · 0 评论 -
布置会场(II)
题目:https://ac.nowcoder.com/acm/problem/14351小ddd接到了一个布置会场的任务。他需要将贵宾观众席的椅子排成一排,一共需要NNN个。上级领导指示,他只能使用两种椅子。(AAA类型和BBB类型)并且假设每种椅子的数量都是无限的。而其如果想要摆置一个BBB类型的椅子,对应就需要必须有连续两个一起布置。换句话说,就是如果出现了BBB类型的椅子,其必须且只有两个连着BBB类型的椅子。小d突然想知道对应NNN个椅子排成一列,他能够有多少种布置的方式。思路:设f(i)f原创 2020-11-02 19:38:20 · 323 阅读 · 0 评论 -
codeforces
题目:https://ac.nowcoder.com/acm/problem/21314牛牛正在打一场CFCFCF比赛时间为TTT分钟,有NNN道题,可以在比赛时间内的任意时间提交代码。第iii道题的分数为a[i]a[i]a[i],题目的分数随着比赛的进行,每分钟减少b[i]b[i]b[i]这是一场比较darkdarkdark的CFCFCF,分数可能减成负数已知第iii道题需要花费c[i]c[i]c[i]的时间解决请问最多可以得到多少分。思路:对于两道题i,ji,ji,j来说,有两种先后顺序,xxx原创 2020-10-04 21:58:45 · 536 阅读 · 0 评论 -
车的放置
题目:https://ac.nowcoder.com/acm/problem/50592有下面这样的一个网格棋盘,a,b,c,da,b,c,da,b,c,d表示了对应边长度,也就是对应格子数。当a=b=c=d=2a=b=c=d=2a=b=c=d=2时,对应下面这样一个棋盘:要在这个棋盘上放kkk个相互不攻击的车,也就是这kkk个车没有两个车在同一行,也没有两个车在同一列,问有多少种方案。同样只需要输出答案mod 105+3mod\ 10^5+3mod 105+3。思路1:原创 2020-09-05 21:49:30 · 307 阅读 · 0 评论 -
[BZOJ1783] [Usaco2010 Jan]Taking Turns
题目:一排数,两个人轮流取数,保证取的位置递增,每个人要使自己取的数的和尽量大,求两个人都在最优策略下取的和各是多少。思路:设f[i]f[i]f[i]表示从i开始选先手最大的和是多少id[i]id[i]id[i]表示从iii开始选最优情况下下一个选的位置是什么。那么从后往前推,根据是不是选a[i]a[i]a[i]分类讨论一下就好了。注意 对手也有最优策略。#include <cstdio>#include <cstring>#include <set>#i原创 2020-07-24 22:34:47 · 106 阅读 · 0 评论