Educational Codeforces Round 14
はい。
http://codeforces.com/contest/691
A. Fashion in Berland
ざっくりと大意
・1はボタン締め、0はボタン開け状態。Berlandではボタンを1つだけ開けるファッションが流行っている。
・但し、ボタンが1つしかない場合はボタンは開けない。
Python2
n=int(raw_input()) l=map(int,raw_input().split()) ans=chk=0 print 'YES' if (l.count(0)==1 and n!=1) or (n==1 and l[0]==1) else 'NO'
長さが2以上なら0が1つだけあること、長さが1ならボタンを締め(1)であることがYESになる。それ以外はNO。
B. s-palindrome
ざっくりと大意
・文字列が鏡像、対象状態かどうか。
Python2
p={'b':'d','d':'b','p':'q','q':'p'} c=['A','H','I','M','O','o','T','U','V','v','W','w','X','x','Y'] s=raw_input() if len(s)%2==1: if s[len(s)/2] not in c: print 'NIE' exit() for i in range(len(s)): if s[i] in c and s[-1*i-1]==s[i]: pass elif s[i] in p and p[s[i]]==s[-1*i-1]: pass else: print 'NIE' exit() print 'TAK'
はい。対称になるかどうかは問題文のフォントを見て考えましょう。英小文字iやlは対称にならない文字です。文字列長さが奇数なら中央に単体で対象になる文字が必須です、AやHなど。それ以外の箇所では単体で対象になる文字は反対側にも同じ文字が必要、bとdなどは反対側に対象になる文字が必要。それら以外が検出されたら即時でNIE判定になる。