- 博客(6)
- 资源 (1)
- 收藏
- 关注
原创 HDU 4189
#include #include #include #include #include #include #include #include #include #include #include #define pb push_back#define mp make_pair#define fi first#define se second#define VI ve
2013-12-05 21:01:37
631
原创 HDU 4191
题意:一场网球比赛,告诉你你能赢得一分的概率,输出赢得一局,一轮,和一场的比赛的概率,规则和正式比赛一模一样。正常情况:dp[i][j] = p*dp[i+1][j] + (1 - p) * dp[i][j+1];对于可能一直打的情况: dp[i][i] = p * p / (1 - p * (1 - p) * 2);三次dp 都利用上次的计算结果#include #
2013-12-05 18:52:28
700
原创 UVALive 4961
题意:给你一个字符串,告诉你两个字符会合成的字符和代价,问最后字符串合成一个字符所需的最下代价。如果合成的两个字符代价一样,那么取较前给出的字符。f[i][j][k]:i到j这段区间合成k的最小代价注意最后一个case 不要输出换行。#include #include #include #include #include #include #include #includ
2013-12-05 18:44:42
510
原创 UVALive 4952
完全是看OpenLegend的代码,很神。1.如果两个数字的从某一位开始的数字都一样,那么所走的路径就会一样,那么s0的开关在这一位必须不一样。2.判断是否是同一类的,dfs一遍。#include #include #include #include #include #include #include #include #include #include
2013-11-26 16:19:53
454
原创 SPOJ 8628 Selling Land
题意:给一个1000*1000的矩阵,每个元素要么是空地'.',要么是swamp。对于矩阵中的每个'.',求出它往左上角作矩形扩展时,均包含'.',能扩展的最大周长。1.O(n^2)可以计算出每个点可以向上延伸多远up[i][j]。2.之前比up[i][j]高的点都不必考虑了,所以需要维护一个单调上升的队列3.每次增加一列,只会增加x轴方向的周长,这对于所有高度的矩形都是一样的,那么如
2013-11-25 17:19:12
574
原创 HDU 4784 Dinner Coming Soon DP
题意: 在k个平行空间中,n个点,由m条有向边连接起来,每条边有一个时间花费和金钱花费,同时,在每个点上,可以跳转到(ki+1)%k 的空间里,不同空间的边权值不变。另外,在每到达某个空间的某个顶点时,可以买一包盐,卖一包盐,或者什么也不做,买卖的时间不考虑。相同的顶点在不同的空间中盐的价格也不一定相同..现在给定顶点数n,边数m,盐的最大携带量b,空间数k,初始的金钱r,规定的时间t,问怎么走可
2013-11-21 22:09:30
813
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人