拓扑排序

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

神奇の背包 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)\) 的。

  1. #include <cstdio>
  2. int n, m, w[1003], f[1003][10003], g[1003][10003], ans;
  3. int main() {
  4. scanf("%d%d", &n, &m);
  5. for (int i=1; i<=n; ++i) scanf("%d", &w[i]);
  6. f[0][0]=1;
  7. for (int i=1; i<=n; ++i) {
  8. for (int j=m; j>=w[i]; --j) f[i][j]=(f[i-1][j]+f[i-1][j-w[i]])%1014;
  9. for (int j=w[i]-1; ~j; --j) f[i][j]=f[i-1][j]; // (*)
  10. }
  11. g[n+1][0]=1;
  12. for (int i=n; i; --i) {
  13. for (int j=m; j>=w[i]; --j) g[i][j]=(g[i+1][j]+g[i+1][j-w[i]])%1014;
  14. for (int j=w[i]-1; ~j; --j) g[i][j]=g[i+1][j]; // (*)
  15. }
  16. for (int i=1; i<=n; ++i) {
  17. ans=0;
  18. for (int j=0; j<=m; ++j) ans=(ans+f[i-1][j]*g[i+1][m-j])%1014;
  19. printf("%d ", ans);
  20. }
  21. return 0;
  22. }

Sequence

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

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

5 November的更多相关文章

  1. [POJ1765]November Rain

    [POJ1765]November Rain 试题描述 Contemporary buildings can have very complicated roofs. If we take a ver ...

  2. We will be discontinuing the Nitrous Development Platform and Cloud IDE on November 14th, 2016.

    我表示我很难过 Nitrous We will be discontinuing the Nitrous Development Platform and Cloud IDE on November ...

  3. TIOBE Index for November 2015(转载)

    原文地址:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html November Headline: Java once a ...

  4. 日常英语---七、[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准)

    日常英语---七.[Updated November 14 at 4:10 PM PST] Scheduled Game Update - November 14, 2018(n.标准) 一.总结 一 ...

  5. Multi-Cloud & Kubernetes: Cloud Academy November 2018 Data Report

    https://cloudacademy.com/research/multi-cloud-kubernetes-devops-cloud-academy-data-report-nov-18/ No ...

  6. ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbilisi, November 24, 2010

    ACM ICPC 2010–2011, Northeastern European Regional Contest St Petersburg – Barnaul – Tashkent – Tbil ...

  7. USACO 2006 November Gold Corn Fields

    USACO 2006 November Gold Corn Fields 题目描述: Farmer John has purchased a lush new rectangular pasture ...

  8. November 3rd Week 45th Thursday 2016

    Shared joy is a double joy, the same as your gift and idea. 与人分享,欢乐.灵感加倍. As a coder, I must work wi ...

  9. November 1st 2016 Week 45th Tuesday

    Difficult circumstances serve as a textbook of life for people. 艰难坎坷是人们的生活教科书. It would be better if ...

  10. November 2nd Week 45th Wednesday 2016

    If your ship doesn't come in, swim out to it. 如果你的船不驶进来,那你就朝他游过去吧! Swim out to it, don't fear that y ...

随机推荐

  1. 第二次课程总结&学习总结

    Java实验报告 班级 计算机科学与技术一班 学号 20188390 姓名 宋志豪 实验 写一个名为Rectangle的类表示矩形.其属性包括宽width.高height和颜色color,width和 ...

  2. Quartz-第四篇 常规quartz的使用

    1.目录结构 2.主要文件 1>引入的jar包,quartz-2.2.2解压后lib下所有的jar包 2>quartz.properties org.quartz.threadPool.t ...

  3. LINUX之启动流程

    (上图片转自一位高手所做) 启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关 ...

  4. SpringBoot整合mybatis碰到的问题

    整合mybatis 1.  导包:在原有的web项目的基础上加上 <!--JDBC连接-->     <dependency>         <groupId>m ...

  5. [Bzoj1911][Apio2010]特别行动队(斜率优化)

    题目链接 斜率优化的经典模型,将序列分成若干段,每段有一个权值计算方法,求权值和最大/小 暴力的dp $O(n^{2})$ dp[i]为1-i的序列的最优解.sum[i]为前缀和,$D(i)=ax^{ ...

  6. sping data jpa 共享主键 OneTonOne 延时加载

    当我们使用spring boot创建项目时,系统默认使用的是如下parent. <parent> <groupId>org.springframework.boot</g ...

  7. 1.利用canvas画一个太极图

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. Vue中如何引入第三方icon库(阿里巴巴矢量图标库)

    1.进入阿里巴巴矢量图标库: 2.新建项目 3.前缀注意不要跟element-ui自带的icon(el-icon)重名就ok 4.创建完成后,去阿里选自己要使用的图标,加入购物车           ...

  9. SEM和SEO的区别?

    https://www.zhihu.com/question/20307058 SEM在营销中扮演的角色:进攻 搜索引擎营销,即SEM(Search Engine Marketing),是基于搜索引擎 ...

  10. CentOS7搭建FastDFS+Nginx

    1. FastDFS 介绍 FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件 ...