您的位置:首页 > 运维架构

3403: [Usaco2009 Open]Cow Line 直线上的牛

2015-02-22 20:36 197 查看

3403: [Usaco2009 Open]Cow Line 直线上的牛

Time Limit: 3 Sec Memory Limit: 128 MB
Submit: 71 Solved: 62
[Submit][Status]

Description

题目描述
约翰的N只奶牛(编为1到N号)正在直线上排队.直线上开始的时候一只牛也没有.接下来发生了S(1≤S≤100000)次事件,一次事件可能是以下四种情况之一:
.一只奶牛加入队伍的左边(输入“AL”).
.一只奶牛加入队伍的右边(输入“AR”).
·K只队伍左边奶牛离开(输入“DLK”).
·K只队伍右边奶牛离开(输入“DRK”).
请求出最后的队伍是什么样.
数据保证离开的奶牛不会超过队伍里的奶牛数,最后的队伍不空

Input

第1行输入S,之后S行每行描述一次事件,格式如题目描述所示

Output

由左到右输出队伍最后的情况.

Sample Input

10

A L

A L

A R

A L

D R 2

A R

A R

D L 1

A L

A R

Sample Output

7

2

5

6

8

HINT



Source

Silver

题解:么么哒直接上数组和左右指针A之。。。(HansBug:论蒟蒻的刷水之路^_^)

var
i,j,k,l,m,n,f,r:longint;
a:array[0..500000] of longint;
function getpx:longint;
var c1:char;i,j,k,l:longint;
begin
i:=0;j:=0;
repeat
read(c1);
if i=0 then
begin if c1='A' then i:=1 else if c1='D' then i:=2 end
else begin if c1='L' then j:=1 else if c1='R' then j:=2; end;
until j>0;
exit((i-1)*2+j);
end;
begin
readln(n);m:=0;f:=200000;r:=199999;
for i:=1 to n do
begin
case getpx of
1:begin inc(m);dec(f);a[f]:=m; end;
2:begin inc(m);inc(r);a[r]:=m; end;
3:begin read(j);inc(f,j); end;
4:begin read(j);dec(r,j); end;
end;
readln;
end;
for i:=f to r do writeln(a[i]);
readln;
end.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: