暑假训练题B组
suninisu
这个作者很懒,什么都没留下…
展开
-
UVA - 514
方法:题目中的出站与入站跟stack的操作一致,故用stack来表示车站。初始A面的顺序是从1到N,B面的顺序由题目中给出。A面的每个车辆,只有两个选择,一个是正好对应此时B的首辆,二是进栈。B的首辆要么是栈的top,要么是A的首辆。两个变量,一个是此时B的首辆,一个是此时A的首辆。所以可以一直循环,来使B的每一辆与A的首辆或者栈的top()一一对应,循环条件是B还有剩余的...原创 2018-08-06 20:26:25 · 141 阅读 · 0 评论 -
HDU - 1509
方法:优先队列,控制好优先条件。第一个是按照优先级来排列,若优先级相同,则按照先后顺序排列。AC代码:#include <cstdio>#include <iostream>#include <queue>using namespace std;struct news{ string name; int par; ...原创 2018-08-06 20:36:13 · 224 阅读 · 0 评论 -
UVA - 12207
方法:双端队列。注意删除队列中的因命令已经排到队首的元素。AC代码:#include <cstdio>#include <iostream>#include <deque>#include <algorithm>using namespace std;const int maxn = 1000+10;int main()...原创 2018-08-06 20:41:36 · 252 阅读 · 0 评论