上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 48 下一页
  2013年3月13日
摘要: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1954这个题给我们的感觉就是完全背包 但是N太大 需要用鸽巢原理优化先将a(1---n)排序(a1,a2,a3.......an) 每个数选择的个数为(k1,k2,k3........kn)(ki可以为0)使得 k1*a1+k2*a2+k3*a3+.........+kn*an==N则 (k1+k2+k3+.....kn-1)<an用反证法证明: 假如说sum=(k1+k2+k3+.....kn-1)>=an 那么根据鸽巢原理 在前sum个数里面 一定存在 连续的 阅读全文
posted @ 2013-03-13 21:38 夜-> 阅读(373) 评论(0) 推荐(0) 编辑
  2013年3月12日
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1205水题代码:import java.util.*;import java.math.BigInteger;import java.math.BigDecimal;;interface forall { static final int N = 1000005;}public class Main implements forall { public static void main(String[] args) { Scanner in = new Scanner(System.in); // Big.. 阅读全文
posted @ 2013-03-12 20:43 夜-> 阅读(153) 评论(0) 推荐(0) 编辑
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1552“You may assume that optimal program will not have to modify more than four memory cells.”刚开始没有注意到这句话 一直想不到怎么解。后来才发现直观的解法就是 dp[50][27][27][27][27][4] 可以用滚动数组优化内存 但是记录路径的部分没有优化 会超内存后来看了大牛的提示原来只需要用 dp[50][27][27][27][4] 降低了一个维度应为当 dp[i][l][r][k][u][ 阅读全文
posted @ 2013-03-12 18:44 夜-> 阅读(326) 评论(0) 推荐(0) 编辑
  2013年3月11日
摘要: http://pat.zju.edu.cn/contests/pat-a-practise/1003最短路代码:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<vector>#include<set>#include<map>#include<string>#include<queue>#include<stack>#incl 阅读全文
posted @ 2013-03-11 16:56 夜-> 阅读(153) 评论(0) 推荐(0) 编辑
  2013年3月7日
摘要: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3261先把不需要destroy的边连上 然后逆序寻找答案 遇到destroy 的边就连上过程中用并查集维护答案代码:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<vector>#include<set>#include<map>#incl 阅读全文
posted @ 2013-03-07 21:36 夜-> 阅读(163) 评论(0) 推荐(0) 编辑
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1570此题如果只求最少花费的话,就可以简单的dp或是背包就可以了难就难在在选择路径上有困难 应该在记录路径时 记下所有可能是最优的路径 排除一定不是最优的路径然后选择一条最优的总路径代码:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<vector>#include<set> 阅读全文
posted @ 2013-03-07 18:20 夜-> 阅读(324) 评论(0) 推荐(0) 编辑
摘要: DP+数学 恶心死我了 DP那部分没什么 数学的那部分各种细节各种繁琐呀在比赛中就可以做出来这种题的人果然不一般 自己还需锻炼呀代码:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<vector>#include<set>#include<map>#include<string>#include<queue>#include<sta 阅读全文
posted @ 2013-03-07 18:14 夜-> 阅读(184) 评论(0) 推荐(0) 编辑
  2013年3月4日
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1696代码及其注释:#include<iostream>#include<stdio.h>#include<string.h>#include<math.h>#include<algorithm>#include<vector>#include<set>#include<map>#include<string>#include<queue>#include<stack&g 阅读全文
posted @ 2013-03-04 19:05 夜-> 阅读(411) 评论(0) 推荐(0) 编辑
  2013年3月1日
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1342简单DP代码:#include<iostream>#include<stdio.h>#include<string.h>#include<math.h>#include<algorithm>#include<vector>#include<set>#include<map>#include<string>#include<queue>#include<stack&g 阅读全文
posted @ 2013-03-01 14:02 夜-> 阅读(205) 评论(1) 推荐(0) 编辑
  2013年2月27日
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1276用 ans[numaa][numab][numba][numbb][0] 表示用 numaa个AA numab个AB numba个BA numbb个BB 以 A为结尾的种类数量用 ans[numaa][numab][numba][numbb][1] 表示用 numaa个AA numab个AB numba个BA numbb个BB 以 B为结尾的种类数量然后根据结尾是A还是B 进行向后更新数量代码:#include<iostream>#include<stdio.h># 阅读全文
posted @ 2013-02-27 16:26 夜-> 阅读(338) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 48 下一页