曹文信息在线OJ
Home
ProblemSet
Source/Category
Contest
Status
Ranklist
F.A.Qs
Login
Register
1182: [模拟]贪吃蛇
Memory Limit:128 MB
Time Limit:1.000 S
Judge Style:Text Compare
Creator:
Submit:28
Solved:1
Submit
Submit Record
Statistics
Web Board
ShowOff!
Description
在众多的DOS游戏中,有一个蛇吃苹果的游戏,在这个游戏中,一条蛇在一个由N*N的方格组成的方阵中游动,某些方格中有苹果,当蛇吃到苹果后它的身体会变长,当蛇撞上墙(方阵外有一圈墙)或撞上它自己时游戏就结束,开始时蛇处于左上角的方格中,长度为1,它的头朝右。
蛇每秒钟将根据下列二条规则改变一次位置
· 首先蛇会伸长脖子将它的头伸进头朝向的方向上的下一个格子。
· 如果该方格中有苹果,则蛇身保持不变(不知不觉中蛇身已拉长1个格子)
· 如果该方格中没有苹果,则将蛇尾最后一格砍掉(相当于蛇长不变,蛇整体向前移动一格)
已知苹果的分布图和蛇的移动轨迹,写一个程序计算游戏结束的时间。
Input
输入文件第一行包含一个整数N,其中2≤N≤100,第二行包含一个整数K,其中0≤K≤100,表示苹果总数,接下来的K行每行二个用空格隔开的整数r和c,其中1≤r,c≤N,表示苹果所在的位置,左上角位置不会有苹果,第k+3行包含一个整数L,其中1≤L≤100,表示蛇头改变方向的次数,接下来的L行每行表示一次转向的信息,每次转向用一个正整数X(X<=10,000)和一个字符C表示,两者用一个空格隔开,表示在时刻X蛇头前进一格后还将转过90度,字符C为‘L’表示左转,‘D’表示右转,开始时刻记为1。
Output
输出文件仅一行包含一个整数表示游戏结果的时刻。
Sample Input
Copy
10 5 1 5 1 3 1 2 1 6 1 7 4 8 D 10 D 11 D 13 L
Sample Output
Copy
13
Source/Category
高级A