uva OJ
文章平均质量分 66
warteac
这个作者很懒,什么都没留下…
展开
-
uva120 Stacks of Flapjacks
题意:有一摞大小不一的煎饼,我们只能用铲子使之翻转,可以从最下面翻转,也可以选择上面几块翻转,翻转的位置是从底层往上数,例如整摞一起翻就是0。现要求在几次翻过之后饼是从小到大堆起来的,结束时位置打印0。解法:首先选择出最大的饼,如果它不在最下面,就把它发到最上面,然后整摞反过来,最大的饼就在最下面了。然后忽略最大的饼,又是在整摞饼中选择最大的饼(也就是原来的第二大的饼),重复以上过程,知道所有原创 2013-04-15 20:40:00 · 493 阅读 · 0 评论 -
uva10004Bicoloring-WA
算法:既然只有两种颜色,那么可以将所有的点分到两个集合中,假定:集合A是红色,集合B是黑色,而且相同集合中的点之间不能有边,不同集合中的点必须有边,即对于集合A中的任意一个点都能连到集合B中,但是这一点不必担心,因为这是强连通图,任意一个点都不会孤立的。只要看前一个条件了,SO:我在读入每一条边时就将两个顶点分别放在两个集合中,下次再读入一条边,如果发现有个顶点出现在集合A(B)中,就将另一个顶点原创 2013-04-18 21:15:32 · 486 阅读 · 0 评论 -
uva120 Stacks of Flapjacks
简短精悍的c++程序:1.使用for循环替代冗长的while循环 2.使用deque、iterator 以及 max_element() , reverse() , distance() 函数。3. 注释清晰,语言简练#include #include #include #include #include #include using转载 2013-04-15 20:49:24 · 452 阅读 · 0 评论 -
uva10714 Colliding Ants
题意:在一根有限长竹竿上,有很多只蚂蚁,每只蚂蚁的爬行速度相同,但是方向是任意的,当两只蚂蚁相遇后,它们就会反向爬行,速度不变,求所有蚂蚁掉下竹竿的最早和最晚时间。解法:乍一看很唬人,因为蚂蚁的方向是不确定的,但是试想,蚂蚁A和蚂蚁B相遇以后,各自反向,但是速度是不变的,所以我们可以视为没有相遇,只是A、B悄悄的互换了身份而已,现在的B就替A完成剩下的路,而A就替B爬。 如果A爬8s会掉下去原创 2013-04-13 02:18:22 · 494 阅读 · 0 评论 -
uva102 Ecological Bin Packing
/*uva102 Ecological Bin PackingAC by Warteac2013-4-11Runtime:0.148s*/#include#includeusing namespace std;enum {B=0,G=1,C=2};const int bcolor[6][3] = {{B,C,G},{B,G,C},{C,B,G},{C原创 2013-04-13 02:22:05 · 546 阅读 · 0 评论 -
UVA10026Shoemaker's Problem
解法:按照单位双鞋的罚款数排序输出代码:/* uva10026 Shoemaker's Problem AC By Warteac 2013-4-12 Runtime:0.008s*/#include#include#includeusing namespace std;struct node{ double fine; int no; node(double原创 2013-04-15 23:26:03 · 476 阅读 · 0 评论 -
uva10954 Add All
/*uva10954 Add AllAC by Warteac2013-4-11Runtime:0.048s*//* priority_queue 的定义和cmp重写*/#include#include#includeusing namespace std;class AddAll{private:struct cmp{原创 2013-04-13 02:20:46 · 409 阅读 · 0 评论 -
uva481 What Goes Up
/* uva481 What Goes Up AC By Warteac 2013-4-8 Runtime:0.196s*/#include#include#include#include#include#include#include#includeusing namespace std;////////////原创 2013-04-13 02:23:54 · 625 阅读 · 0 评论 -
uva 231 Testing the CATCHER
//uva 231 Testing the CATCHER//AC By Warteac//2013-4-6//O(N*LogN)//runtime:0.012s#include#include#include#include#include#include#include#includeusing namespace std;///////原创 2013-04-13 02:24:39 · 473 阅读 · 0 评论 -
最长单调递减子序列(非严格单调) uva 231Testing the CATCHER
问题描述: 一个序列seq [],找出一个最长的不严格单调递减的子序列(subseq [i+1] 解决1:O(n*n)令dp [] 数组,dp [i] 表示以seq [i] 为最小元素(也就是子序列中最后一个)的序列的长度,dp []的最大值就是所求结果伪代码: int seq[] , dp[] dp[0] = 1; for(i = 1; i dp[i]原创 2013-04-07 00:47:24 · 1018 阅读 · 0 评论