摘要: 今天dp发现一道背包方案数的题,先是看错题目(丢人),然后是循环不会搞(丢人)。 首先是本人看错题想出来的变式:求能拼成的方案总数这个的话既不是完全背包也不是普通的01背包,所以考虑按照01背包的方案数来求解。 设f[i]表示当前的价值能否拼出,f[0]=1;f[i] | =f[i-a[j]];这个 阅读全文
posted @ 2018-10-23 22:09 chdy 阅读(538) 评论(0) 推荐(0) 编辑
摘要: 前缀和这种小技巧noip很容易就考到了,例如11年的聪明的质监员这道题二分但是用到了前缀和优化。前缀和可以优化一下时间复杂度。 首先是一维的前缀和,a[i]+=a[i-1];这样很简单使用的时候只要直接a[r]-a[l-1]就可以吧r到l直接的累加全部搞出来优化一重循环0.0; 下面是10.21考的 阅读全文
posted @ 2018-10-22 20:11 chdy 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 学习了树状数组就有了树状数组的应用,求逆序对。 下面是oj超车代码: #include<bits/stdc++.h> #include<iomanip> #include<iostream> #include<cstdio> #include<algorithm> #include<cmath> # 阅读全文
posted @ 2018-10-17 21:54 chdy 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 提到二进制,莫过于二进制的运算或者应用,立一个flag总结知道的所有二进制知识,二进制位第一位为第0位! 注:在oi之中所有的log运算都是以2为底的! 二进制运算符:y<<x,左移,y的二进制数左移x位,相当于y乘以2的x次方,eg:4<<2=16; y>>x,右移,y的二进制数右移x位,相当于y 阅读全文
posted @ 2018-10-17 09:56 chdy 阅读(1545) 评论(0) 推荐(0) 编辑
摘要: 康神是谁,那是相当的强,亲自给我讲这道金明的预算方案。看不懂书上代码的情况之下,正解:树形dp~不会。 康神把书上的思路给我讲了一遍。 于是知道了这道题要先拿主件01背包,再对附件做一个01背包,使每次拿附件的同时都跟上一个附件的价值,进行01背包,注意这个地方要开一个临时的数组a,a这里要考虑对f 阅读全文
posted @ 2018-10-16 17:05 chdy 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 这道题第一问是每一发导弹不能高于前一发的高度很显然是一个最长不上升子序列既然是不上升那就是下降和相等了,由于数据是1e5,双重循环铁定超时,所以考虑一下优化,那就二分来进行查找。这里的查找又让我迷了几个小时,明明很简单却很迷。 这道题没有导弹的数量所以考虑输入问题,学长给的输入。 int top1= 阅读全文
posted @ 2018-10-12 16:33 chdy 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 有些背包都是需要求方案具体是什么的,于是问问dalao,有道01背包求方案数的题,卡了好久。 求背包的方案数,这个问题就很好了,我不会qwq。 搞了半天是先存方案于是在背包更新的时候就存下方案吧,发现存不了因为状态在不停的被更新于是采取一种方法。 找到输入的时候先从n到1输入,背包的时候从1开始这样 阅读全文
posted @ 2018-10-11 21:22 chdy 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 经过noip模拟赛的第三天爆零,第四天终于有分了,=.=,还是学习了背包——分组背包。 表示每一组都只能够选择一种物品,01背包之中又带些条件,学长大致说了一遍,感觉没用后来自己看懂了。 分组背包就是先找到有多少组物品,然后先在每一组物品之中加一个循环枚举的是体积然后,针对当前这一组的每一件物品之中 阅读全文
posted @ 2018-10-11 13:12 chdy 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 看这道题题目叫做魔族密码多新奇的名字点开是道字符串的dp,思考然后想出lis其实但字符串之间的比对只有循环然后其实循环爆不了,太懒点开了题解发现有人使用stl——cstring的函数了方便多了,借鉴一下好啦。 函数:strncmp这个是cstring里对比两个字符串的东西从第一位开始对照相同则返回0 阅读全文
posted @ 2018-10-07 20:32 chdy 阅读(571) 评论(0) 推荐(0) 编辑
摘要: 饥饿的奶牛oj上n只有1000,过于水,O(n^2)的算法很容易水过,洛谷上这是一道提高加的题,很难啊,所以要好好拿来练习今天写博客再次复习一下,oi最怕遗忘了。 这道题呢实质是一个区间覆盖的dp,首先是设f[i]表示前i个草地所能获得的最大值,这也就很简单的找到了状态转移方程。 如果当前的前j草地 阅读全文
posted @ 2018-10-05 22:05 chdy 阅读(254) 评论(0) 推荐(0) 编辑