04 2016 档案
摘要:poj3666 题意:将一串数改成非严格的上升或者非严格的下降,最少要改变多少 分析:一道非常经典的dp题,看了网上别人的思路才解决的。我们的目的是要将其改成非严格的单增或单减,并且求其最少的改变,所以对于那些不符合要求的点,我们使它变得跟前一个或者是后一个相同时,我们得到的改变才是最少的,这样,我
阅读全文
摘要:昨天第一次开大小号打cf,发现原来小号提交之后大号在此提交同样的代码会被skipped掉,然后之后提交的代码都不记分,昨天a,b,c都是水题 A 题意:问一个物品最多能被分成多少份,分成的连续两份不能相同 分析:直接1,2这样份,所以除以3乘2,在对3取模 1 #include <iostream>
阅读全文
摘要:poj1065 题意:给定木棒的长度和重量,将n跟木棒进行加工,若后一根木棒的长度和重量都大于前一跟,则可以继续进行加工,否则需要停下来重新对刀,开始第一次要停下来一次,问最少停下来几次 分析:一个非常好的dp题目,需要好好总结一下,我们可以将木棒按照长度和重量任意一个进行升序排序,对另外一个求最长
阅读全文
摘要:poj3181 题意:问用1到k组成n共有多少种组成方法 分析:用dp[i][j]纪录前i种数相加得到j共有多少种方法 (1)若j-i>=0,dp[i][j]=dp[i-1][j]+dp[i][j-i] (2)dp[i][j]=dp[i-1][j] 注意这个地方会爆long long,要用高精度,用
阅读全文
摘要:poj3046 题意:有n种数a个,求分成s份到b份总共有多少种分法 分析:dp[i+1][j]表示从前i个物品中取出j个共有多少种取法,则前i-1中必然取出的是j-k个,(0<=k<=min(j,vis[i])),所以 dp[i+1][j]=Σdp[i][j-k]=Σdp[i][j-1-k]+dp
阅读全文
摘要:poj1742 题意:有n种物体,每种有ci个,权值为ai,问能组成1到m之间的多少个数 分析:楼教主著名的“男人八题”中的一题,很经典的dp问题,参照《挑战程序设计》上的多重部分和问题,定义bool型的dp[i+1][j],表示前i个数能否得到j,于是就有前i-1个数得到j-k*a[i](0<=k
阅读全文
摘要:首先吐槽一下,ca爷出的这套题到处都是坑,bestcoder变成besthack,Ranting已经掉得不能看了 A题: 链接:http://acm.hdu.edu.cn/showproblem.php?pid=5665 分析:这题题目写错,一wa,最后发现是求的非负数 1 #include <io
阅读全文
摘要:poj1862 题意:把一堆数两两合并为2*sqrt(m1*m2),求最终的最小值 分析:类似哈夫曼树,不过这次要先将大的合并,用一个优先队列维护即可,优先队列默认就是从大到小,即大顶堆 1 #include <iostream> 2 #include <cstdio> 3 #include <cs
阅读全文
摘要:今天起来发现阿里云ssh无法登录了 出现一条警告: WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 开始打算清理know_hosts发现失败,清了根本没什么用,后来在网上发现一篇博客可以解决,原来需要清理的老的公钥信息 直接:ssh-keygen -
阅读全文
摘要:poj3040 题意:给定一堆纸笔,及每种纸币的面额和张数,每周发的钱不能少于t,问这些纸币最多可以发几周 分析:非常好的贪心题目,思路很简单,先用面额大的来发,不够再用小的来进行填补,但是实现起来并不是特别容易 1 #include <iostream> 2 #include <cstdio> 3
阅读全文
摘要:A(模拟+数学) 题意:在一个数列当中最少添加多少个数可以使它们两两互质,并打印出添加以后的数列 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <string> 5 #include <vector
阅读全文
摘要:我做过的dfs大致分为两种:(1)回溯(2)图上几个方向进行搜索 hdu1016(打表+dfs)(回溯) 题意:一个环里面有m个数,要求两两相加的和为质数,打印出所有排列方案 分析:这题需要用打表+dfs,40以内的素数先求出,然后在直接dfs回溯 1 #include <iostream> 2 #
阅读全文
摘要:poj3616 题意:奶牛在1到n时间段内产奶,总共有m个产奶区间,买个区间有开始时间和结束时间,还有产奶量,同时每次产完奶需要休息一定的时间,求最大产奶量 分析:比较简单的dp,有点像最长上升子序列的变种,把产奶时间按开始时间排序,对于开始时间大于前面结束时间的点,求其最大的产奶量 1 #incl
阅读全文
摘要:poj3194 题意:这题的题意比较难理解,我理解了半天,题意是给定一个n*n的矩阵,矩阵里面有n*n个元素,问每个元素是否都能组成n连块,若可以输出good,否则输出wrong,输出比较奇怪,是给的是每个点的两个坐标,这个点的值为所在行号 分析:读懂题以后这题不难,直接dfs,统计连块的个数即可
阅读全文
摘要:poj2393 题意:牛奶生产奶酪为第i周ci元/单位,存储为每周s元/单位,每周卖掉yi单位,求成本花费的最小值 分析:这个问题就是比较这一周自己生产和前面某一周生产以后存储到本周二者的最小值 1 #include <iostream> 2 #include <cstdio> 3 #include
阅读全文
摘要:poj2627 题意:知道起点和终点,同时知道飞行速度和能在外面飞行的最长时间,问最小经过多少个洞可以到达终点 分析:裸的bfs 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <string> 5
阅读全文
摘要:poj2229 题意:给定一个数,把它拆分成2的n次幂相加的形式,问有多少种方法,结果取后9位 分析:这道题目很有意思,可以把一个数i分成奇数和偶数的情况来讨论,当i是奇数时,i拆分以后的个数与i-1是一样的,而当i是偶数时,相当于将i-1加上一个1以后同时可以把两个1为一组进行合并,故为i-1与i
阅读全文

浙公网安备 33010602011771号