2013年6月9日

EOJ-2859 表达式的个数

摘要: http://acm.cs.ecnu.edu.cn/problem.php?problemid=2859简单dfs。但花了比较大的精力去处理不添加符号的情况,求出所有的情况复杂度大概是8*3^8,最后用map匹配完成dfs遍历时存下添加符号的方法,到最终再计算处理会比较清晰。用hash可能更快。 1 #include<map> 2 #include<cmath> 3 #include<queue> 4 #include<cctype> 5 #include<cstdio> 6 #include<string> 7 #inc 阅读全文

posted @ 2013-06-09 23:22 KimKyeYu 阅读(322) 评论(0) 推荐(0) 编辑

EOJ-2108 小强函数

摘要: 链接:http://www.acm.cs.ecnu.edu.cn/problem.php?problemid=2108题意是约瑟夫环问题的嵌套。由于这题的数据多大,导致不得不用公式法,设2^k<=n<2^(k+1),则题解为(n-2^k)+1这题由于n可以到2^63-1,所以在写函数的时候必须要用unsigned long long,不然会溢出 1 #include <iostream> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 #include & 阅读全文

posted @ 2013-06-09 14:51 KimKyeYu 阅读(255) 评论(0) 推荐(0) 编辑

EOJ 1046 4个数的和为0

摘要: poj 2785 http://poj.org/problem?id=2785eoj 1046 http://acm.cs.ecnu.edu.cn/problem.php?problemid=1046 思路: 散列(hash) + 拉链法去冲突; 具体过程: 把num[][1-4]按列划分为num[][1-2] 和 num[][3-4]; 对 MAXN + num[i][1] + num[j][2] 散列;O(n^2 * len) 对 MAXN - num[i][3] - num[j][4] 查找;O(n^2 * len) 须使得被散列值为正,故用一大数 MAXN 保护;len为链表平均... 阅读全文

posted @ 2013-06-09 13:38 KimKyeYu 阅读(205) 评论(0) 推荐(0) 编辑

【转】各大OJ题目分类

摘要: 原地址 http://blog.csdn.net/linleiqin/article/details/5637647-----------------------------最优化问题------------------------------------- ----------------------常规动态规划 SOJ1162 I-Keyboard SOJ2096 Maximum Submatrix SOJ2111 littleken bg SOJ2142 Cow Exhibition SOJ2505 The County Fair SOJ2818 QQ音速 SOJ2469 Explori 阅读全文

posted @ 2013-06-09 12:50 KimKyeYu 阅读(327) 评论(0) 推荐(0) 编辑

EOJ-2014 Sum of digits

摘要: 链接:http://www.acm.cs.ecnu.edu.cn/problem.php?problemid=2014题目的大意是指有多少个k位数组满足和的各位数之和等于各位数之和的和本质上就是在求有多少个k位数组满足求和时不进位,首位不可以有0,所以第一位有36种可能,之后后都有55种可能,所以k位数共36*55^(k-1)组,这个用乘法定理就可以证明,而且这题的数据很大,所以只能用高精度的算法实现 1 #include <iostream> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <c 阅读全文

posted @ 2013-06-09 12:40 KimKyeYu 阅读(282) 评论(0) 推荐(0) 编辑

EOJ-2927 负载平衡问题

摘要: 链接:http://www.acm.cs.ecnu.edu.cn/problem.php?problemid=2927 这道题用了均分纸牌的方法 开始容易想到在所有的仓库中找到最多的库存量,然后向小的仓库移动,一直到所有的货物都相等,但关键是不知道往哪个方向上移动才能达到移动次数最少。设a[i]为第i个仓库的库存量(0<=i<=n),ave为均分后每个仓库的库存量,ans为最小移到次数。我们按照由左而右的顺序移动货物。若第i个仓库的库存量a[i]超出平均值,则移动一次(ans+1),将超出部分留给下一个仓库,既第i+1个仓库的库存量增加a[i]-ave;若第i个仓库的库存量a[i] 阅读全文

posted @ 2013-06-09 12:34 KimKyeYu 阅读(253) 评论(0) 推荐(0) 编辑

导航