拓扑排序

for (int i=1; i<=n; ++i) if (!ind[i]) q.push(i);
while (!q.empty()) {
int now=q.top(); q.pop(); printf("%d ", now);
for (int k=head[now]; k; k=nex[k])
if (--ind[to[k]]==0) q.push(to[k]);
}

神奇の背包 DP

现有 \(N\) 个物品和容积为 \(M\) 的背包. 物品的体积分别为 \(V_1, V_2, ..., V_N\). 求不选取物品 \(i\) 时, 装满背包的方案数量.

设 \(f(n, V)\) 为正向枚举的背包, \(g(n, V)\) 为反向枚举的背包, 则方案数为 \(\displaystyle \sum_{i=1}^{n}\sum_{j=0}^{m} f(i-1, j)\cdot g(i+1, m-j)\).

本次错误在于没有搞明白1维和2维背包的代码异同点:1维背包已经无需直接赋值,2维背包还是需要 \(f(i, j)=f(i-1, j)\) 的。

#include <cstdio>

int n, m, w[1003], f[1003][10003], g[1003][10003], ans;

int main() {
scanf("%d%d", &n, &m);
for (int i=1; i<=n; ++i) scanf("%d", &w[i]);
f[0][0]=1;
for (int i=1; i<=n; ++i) {
for (int j=m; j>=w[i]; --j) f[i][j]=(f[i-1][j]+f[i-1][j-w[i]])%1014;
for (int j=w[i]-1; ~j; --j) f[i][j]=f[i-1][j]; // (*)
}
g[n+1][0]=1;
for (int i=n; i; --i) {
for (int j=m; j>=w[i]; --j) g[i][j]=(g[i+1][j]+g[i+1][j-w[i]])%1014;
for (int j=w[i]-1; ~j; --j) g[i][j]=g[i+1][j]; // (*)
}
for (int i=1; i<=n; ++i) {
ans=0;
for (int j=0; j<=m; ++j) ans=(ans+f[i-1][j]*g[i+1][m-j])%1014;
printf("%d ", ans);
}
return 0;
}

Sequence

给出数列 \(\{A_n\}\), 修改最少的元素, 使得数列 \(\{A_n\}\) 成为一个公差为 1 的等差数列.

预处理成数列 \(\{A_n-n\}\) 即可极大简化本题解法.

最新文章

  1. 在Android Studio中使用lambda表达式
  2. 2016年4月1日下午,《java入门123》翻开了第一页,从此走上不归路。新手初来乍到,献上见面礼
  3. iOS 进阶 第一天(0323)
  4. 基于cocos2d-x的游戏框架设计——李成
  5. TexturePacker的使用
  6. PHP的MVC框架 深入解析
  7. projecteuler----&amp;gt;problem=8----Largest product in a series
  8. My SQL数据库的安装与配置
  9. 一个爬取Bing每日壁纸的python脚本
  10. (转) 使用jdk的xjc命令由schema文件生成相应的实体类
  11. Gadgets for dollars and pounds CodeForces - 609D
  12. 原生JS实现圆周运动
  13. Selenium 4即将发布:每个QA都应该知道的
  14. windows 下安装 mongodb 时间太久,卡在那里不动
  15. 2-(基础入门篇)Air202下载开发入门(给Air202下载第一个程序)
  16. Android 自定义View二(深入了解自定义属性attrs.xml)
  17. aop的概述
  18. 202-React.Component组件、生命周期
  19. springMVC问题
  20. C/C++中RAND_MAX的用法

热门文章

  1. python字符串-方法
  2. [转帖]Oracle 查询各表空间使用情况--完善篇
  3. C函数调用过程原理及函数栈帧分析(转)
  4. 程序员听到bug后的N种反应…
  5. Maven项目的常用jar包
  6. linux中文件IO
  7. 【SSL2325】最小转弯问题
  8. go &amp; log
  9. 【Thinkphp5】解决模板输出时间戳自动转换为时间格式的问题
  10. Codeforces Round #427 (Div. 2) - D