摘要: 题意:就是平时玩的十滴水游戏,游戏者拥有一定的水滴,能够滴在某些位置,如果一个点上的体积超过了4就会爆炸,向四周传递一个小水滴。该题就是要求模拟这个过程。分析:这里有一个问题就是不能够使用递归来处理这个过程,因为水滴拥有速度,如果是递归调用的话,那么可能本来应该同时到达某点的水滴变成不同时间到达了。处理该题使用了两个队列,分别模拟当前时刻,和下一时刻,每次从当前时刻取出所有的水滴,再视情况处理加入到下一时刻的队列中。有个地方要注意就是同时到达某一点的水滴加上原来的水滴超过了5那么视作和5等效。#include #include #include #include #include #inclu 阅读全文
posted @ 2013-11-07 22:22 沐阳 阅读(575) 评论(0) 推荐(1) 编辑
摘要: 分析:该题有2个地方要注意:所有的车要么不坐要么就坐满,这个贪心策略很容易证明是正确的,还有一点就是最后一辆车除外。#include #include #include #include #include using namespace std;const int MaX = 105;int N, K, D, S;struct Node { int ti; int qz;}seq[MaX];int dp[MaX][MaX];// dp[i][j]表示第i台车来的时候,等候人数为j时的最少开销 void solve() { memset(dp, 0xff, sizeof (dp... 阅读全文
posted @ 2013-11-07 20:37 沐阳 阅读(526) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个正整数A,告知等比数列的公比为q,为这个序列能否超过一个特定的数K。解法:该题需要考虑公比的取值,当q=1,q=-1,q=0的特殊性,由于等比数列的增长速度非常快,所以可以for循环扫描过去。#include #include #include #include #include #include using namespace std;typedef long long LL;const int N = 10005;int n;int seq[N];int k1, k2;LL K;int main() { int T, ca = 0; scanf("%d", 阅读全文
posted @ 2013-11-07 18:35 沐阳 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 题意:很乱分析:把数据处理下,dijkstra下就行了,floyd超时了,我还想着优化一下输入,因为使用了vector和string等等,但是计算数据规模后,处理输入的时间复杂度比floyd要低一个数量级,看来还是要换成dijkstra了。#include #include #include #include #include #include using namespace std;const int N = 205;const int inf = 0x3f3f3f3f; int n, m, D1, D2, A, B;vectorvs[2];int mp1[N][N];int mp2[N][ 阅读全文
posted @ 2013-11-07 15:47 沐阳 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 原来生活如此精彩,对啊。手机、计算机、互联网,我们每天能够通过文字、图像等多媒体纵观有我们创造出来的文明,在智慧的河流中唏嘘不已。当我在维基百科上惊讶某人的出生在大清帝国时期,当我看到NASA在1970回答赞比亚修女为什么我们要探索宇宙,当我看到计算机图像系统的发展......我们是幸运的,这个精彩绝伦的世界被改造的越加美妙,我们越觉得这一切都应当是理所当然的,我们开始无法习惯没有这些,甚至无法习惯没有发现的日子,我们的欲望催生着这个世界不断加速前进,无论你是他的创造者还是享受者,我们都对这个世界贡献着自己的动力。 在我们创造的这个“世界”中,城市不会被杂草长满,水稻只会大规模生长那个正... 阅读全文
posted @ 2013-11-07 13:44 沐阳 阅读(326) 评论(0) 推荐(1) 编辑