運算符號A表示將Num1與Num2相加之後,將其總和回存到Num2,其加法律規定如下:
對於上列對照表中的每一項,其第一個數值表示兩符號相加的結果,第二個數值表示進位值。
例如:U A V = U 且 C A C = V, 進位U。其他例子如下:
VUCDV A VUCDV = VDUCV
DVVCU A CVUCU = UUVCVC
運算符號R表示Num2的值向右移一位,最右邊的數值會遺失且V被補到最左邊的位數,例如VVCDU經運算後會變成VVVCD。
運算符號L表示Num2的值向左移一位,其最左邊的數值會保留且V被補到最右邊的位數,例如VVCDU會變成VVCDUV。
運算符號N表示空運算,即不做任何運算。
Input
輸入資料的第一列會有一個整數N表示測試資料的組數(1 <= N <= 10),每組測試資料六列,前兩列表示Num1與Num2,接下來有三列,每列有一個運算符號,請你判斷Num1, Num2依序經過這三個運算之後是否會等於第六列的數值。
Output
請在輸出資料的開頭與結尾分別輸出"COWCULATIONS OUTPUT", "END OF OUTPUT",請對每組測試資料判斷運算結果是否相同,是請輸出"YES",否則請輸出"NO"。
Sample Input
5 VVVVU VVVVU A A A VVVVVVUV VVCCV VVDCC L R A VVVVUCVC VVCCV VVDCC R L A VVVVUCVV VVUUU VVVVU A N N VVVVVUCU DDDDD VVVVU A L L UVVVVVVV
Sample Output
COWCULATIONS OUTPUT YES YES YES NO YES END OF OUTPUT
原文出處
沒有留言:
張貼留言