Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- def mult(n1, n2):
- matrix = [[0, 0, 0, 0, 0],
- [0, 1, 2, 3, 4],
- [0, 2, -1, 4, -3],
- [0, 3, -4, -1, 2],
- [0, 4, 3, -2, -1]]
- if(n2>='i' and n2<='k'):
- n2 = ord(n2) - ord('i') + 2
- return matrix[n1][n2]
- out = sys.stdin
- sys.stdin = open("a.txt","r")
- T = input()
- for t in range(1,T+1):
- L,X = map(int,raw_input().split())
- phr = raw_input()
- word = phr * min(X,16)
- keep1,sign1 = 1,1
- keep2,sign2 = 1,1
- keep3,sign3 = 1,1
- for i in range(len(word)):
- if(keep1!=2 or sign1!=1):
- keep1 = sign1 * mult(abs(keep1), word[i])
- sign1 = 1 if(keep1>0) else -1
- elif(keep2!=3 or sign2!=1):
- keep2 = sign2 * mult(abs(keep2), word[i])
- sign2 = 1 if keep2>0 else -1
- else:
- keep3 = sign3 * mult(abs(keep3), word[i])
- sign3 = 1 if keep3>0 else -1
- if(keep3==4 and sign3==1):
- print "Case #%d: YES" % t
- else:
- print "Case #%d: NO" % t
- sys.stdin = out
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement