#arc0052. [arc005_2]P-CASカードと高橋君
[arc005_2]P-CASカードと高橋君
题目描述
高桥君为了准备即将到来的7月27日土用丑日,打算邮购一些高级鳗鱼食材,通过网上银行来支付。
高桥君使用的银行卡背面有下图所示的9×9密码表。支付的时候从表中某一位置开始根据指定的方向连续读4个数字作为验证码输入,验证是否是本人操作。
下图的例子是从左边第一列,上方第一行开始,按斜右下的方向连续读4个数字。此时读出来的数字是7930.
如果读数的过程中超过了边界,就要将方向改变,然后继续读剩余的数字。改变方向的规则如下:
- 原方向是上下左右时
- 将原方向180°调转
- 原方向是斜向时
- 在对角线上时
- 将原方向180°调转
- 遇到左右边界时
- 上下方向不变,左右方向调转
- 遇到上下边界时
- 左右方向不变,上下方向调转
总之如下图所示
给出密码表、起始位置和方向,要求输出相应的4位验证码。
输入输出格式
输入格式:
x y W
c11 c12 ... c19
c21 c22 ... c29
:
:
c91 c92 ... c99
- 共10行输入
- 第1行,整数x代表列(1≤x≤9),整数y代表行(1≤y≤9),W表示方向
- W是R、L、U、D、RU、RD、LU、LD的其中一种
- R : 右方向
- L : 左方向
- U : 上方向
- D : 下方向
- RU : 右上方向
- RD : 右下方向
- LU : 左上方向
- LD : 左下方向
- 第2行到第9行是密码表中的整数Cij(1≦i,j≦9)
- i和j表示第i行第j列数字Cij
- Cij的范围是0~9
输出格式:
输出一行四个整数,最后输出换行。
输入输出样例
输入样例#1
3 5 R
790319030
091076399
143245946
590051196
398226115
442567154
112705290
716433235
221041645
输出样例#1
8226
输入样例#2
8 9 LU
206932999
471100777
973172688
108989704
246954192
399039569
944715218
003664867
219006823
输出样例#2
2853
输入样例#3
5 7 D
271573743
915078603
102553534
996473623
595593497
573572507
340348994
253066837
643845096
输出样例#3
4646
输入样例#4
2 2 LU
729142134
509607882
640003027
215270061
214055727
745319402
777708131
018697986
277156993
输出样例#4
0700
输入样例#5
8 7 RD
985877833
469488482
218647263
856777094
012249580
845463670
919136580
011130808
874387671
输出样例#5
8878
说明
样例1
- 3列5行,右方向
样例2
- 8列9行,左上方向
样例3
- 5列7行,下方向,遇到下边界,改变方向继续读数
样例4
- 2行2列,左上方向,遇到边界,改变方向继续读数
样例5
- 8行7列,右下方向,遇到边界,改变方向继续读数