
2012 Multi-University Training
文章平均质量分 81
tju_virus
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2012 Multi-University Training Contest 5-1001 hdu4340(Virus原创)
题目大意: Ant和Bob要占领一个国家,这个国家有N个相互连接的城市(编号为1-N),任意两个城市间有且只有一条线路,占领城市需要花费一定的时间。占领顺序任意,但是若Ant占领了一个城市,则他占领与这个城市相连的城市时需要花费的时间会减半,Bob也是一样。现在给出Ant和Bob占领每个城市需要的时间以及城市之间的同路,求Ant和Bob占领整个国家需要的时间。 输入:第一行 N代表有原创 2012-08-07 19:52:47 · 460 阅读 · 0 评论 -
2012 Multi-University Training Contest 7-1006 hdu4365 Palindrome graph
简单的组合计数问题 坐标为(i,j)的数通过旋转能得到 (j,n-i-1),(n-i-1z),(n-j-1),(n-j-1,i) 通过旋转再家翻转后(i,j)能得到 (i,j),(n-i-1,j),(i,n-j-1),(n-i-1,n-j-1),(j,i),(j,n-i-1),(n-j-1,i),(n-j-1,n-i-1) 通过翻转我们知道需要染色的地方只有矩阵的左上角(其他地方的颜色只原创 2012-08-15 19:08:07 · 388 阅读 · 0 评论 -
2012 Multi-University Training Contest 7-1005 hdu4364 Matrix operation
大水题,只是题目描述有点儿坑爹,需要枚举……不幸的是WA了一次才A,幸运的是只WA了一次…… #include #include #include using namespace std; int main() { char ch; int k,tmp,val[300],recVal[30],num[4][4],res[4][4]; int rec[原创 2012-08-15 18:52:37 · 435 阅读 · 0 评论 -
2012 Multi-University Training Contest 7-1003 hdu4362 Dragon Ball
题意: Sean有一张藏宝图,藏宝图会告诉他在接下来的m个时期内会出现n个龙珠(在不同的位置),从位置x移动到位置y需要话费|x-y|的能量,拿龙珠也需要一定的能量,每个时期他能切只能拿一个龙珠,问他拿完所有的龙珠需要的最小的能量是多少。 输入:m,n,x 代表有m个时期,每个时期都出现n个龙珠,以及Sean的初始位置x 然后两个m*n的矩阵,第一个矩阵表示在第i个时期第j个龙珠的位原创 2012-08-15 18:49:49 · 398 阅读 · 0 评论 -
2012 Multi-University Training Contest 5-1006 hdu4344 Mark the Rope
该题是Pollard_rho分解质因数的模板题 1、所求长度是N的因子(且大于1小于N),集合中的元素得两两互质 2、为了尽可能多的选出,每个L的质因子应当只包含N的一个质因子,L是一个质因子的整数次,所以K的值就是N中不同质因子的个数 3、要想和最大,那么使得每个L最大,只要使得质因子的指数最大即可 如果N本身是质数的话,直接输出1 1 用pollard_rho分原创 2012-08-10 19:42:21 · 373 阅读 · 0 评论 -
2012 Multi-University Training Contest 6-1006 hdu4355 Party All the Time
这个题就是求一个点p,使得(xp - xi ) ^ 3 (i = 1,2,..n)的和最小,通过大家总结这是一个单峰函数(具体是为什么我也不知道),通过三分法可以得到正解。 以下是一个很好的三分法的模板~~ #include #include #include #include using namespace std; typedef double D; const D原创 2012-08-10 12:15:28 · 342 阅读 · 0 评论 -
2012 Multi-University Training Contest 6-1010 hdu4359 Easy Tree DP?
这场比赛中的简单dp题。要求左子树所有值的和小于右子树所有值的和。 由于每个结点中的值都是2的几次方,那么就有这样一个很好的性质2^0+2^1+...+2^(n-1) 那么如果树中的左右子都有的话,那么只要最大的在右子树中就能保证右子树的总和大于左子树的总和 用dp[i][j] 表示i个结点形成深度为j 的树有多少种 comb[i][j] 表示i个结点形成深度小于j的树有多少种方式,c[i原创 2012-08-10 12:27:48 · 438 阅读 · 0 评论 -
2012 Multi-University Training Contest 6-1001 hdu4350 Card
http://acm.hdu.edu.cn/showproblem.php?pid=4350 优化的矩阵快速幂 #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAXN 52 c原创 2012-08-09 20:17:20 · 388 阅读 · 0 评论 -
2012 Multi-University Training Contest 5-1001 hdu4340
http://acm.hdu.edu.cn/showproblem.php?pid=4340 树形dp 我们可以知道,如果某一个连通的点集染的是同一种颜色,则这个集合中只要而且必须有一个点取完整的费用,其他的点都只需要对应费用的一半。 状态: dp[i][j][k] (0 通的点集有j个点选取了完整的费用(j只需为0或1)。 若root为根节点,则最后需要的结果为: min(dp[roo原创 2012-08-07 18:50:28 · 556 阅读 · 0 评论 -
2012 Multi-University Training Contest 4-1007 hdu4337 King Arthur's Knights
http://acm.hdu.edu.cn/showproblem.php?pid=4337 求哈密尔顿回路的一个可行解 #include #include #include #include #include #include using namespace std; #define N 155 int c[N][N],x[N],flag,n,m; void output(原创 2012-08-09 10:45:59 · 602 阅读 · 0 评论 -
2012 Multi-University Training Contest 4-1001 hdu4331 Image Recognition
http://acm.hdu.edu.cn/showproblem.php?pid=4331 O(n^3),加了特判 #include #include #include #include #include #include #define N 1005 using namespace std; int n,a[N][N],vert[N][N],hori[N][N],r[N][N]原创 2012-08-09 10:48:59 · 421 阅读 · 0 评论 -
2012 Multi-University Training Contest 5-1007 hdu4345
题目描述:有N个元素的一个集合经过K次置换能变回原来的集合,求k的个数。 解题思路:k为置换群中各独立置换群长度的最小公倍数,k的个数即N以内的总和小于10的质数的乘积(包括1) 比如N=10时,k可为:1,2,3,2*2,5,2*3,7,2*2*2,3*3,2*5,2*2*3,2*7,3*5,2*2*5,3*7,2*3*5,共16个 解法:DP 状态: dp[原创 2012-08-07 19:33:36 · 371 阅读 · 0 评论 -
2012 Multi-University Training Contest 5-1011 hdu4349
题目大意:给一个数N(10^8),求 C(n,0),C(n,1),C(n,2)...C(n,n).中有多少个奇数。 解体思路:本题为Lucas定理推导题,我们分析一下 C(n,m)%2,那么由lucas定理,我们可以写 成二进制的形式观察,比如 n=1001101,m是从000000到1001101的枚举,我们知道在该定理中 C(0,1)=0,因此如果n=1001101的0对应位置的原创 2012-08-07 19:34:56 · 330 阅读 · 0 评论 -
2012 Multi-University Training Contest 5-1004 hdu4342
题目描述:求出第i个非平方数M,以及小于等于M的所有数的开方之和 纯数学题,把公式推出来就OK了 #include #include #include using namespace std; int main(原创 2012-08-07 19:31:04 · 343 阅读 · 0 评论 -
2012 Multi-University Training Contest 6-1009 hdu4358 Boring counting
http://acm.hdu.edu.cn/showproblem.php?pid=4366 树形启发式合并,利用map 启发式合并,不管父子关系如何,每次将元素个数少的节点并入元素个数多的。用id[i]表示节点i合并后的结果存在节点id[i]。 #include #include #include #include #include #include #include原创 2012-08-19 17:13:07 · 438 阅读 · 0 评论