Codeforces Beta Round #96 (Div.2 Div.1)
はい。
http://codeforces.com/contest/133
A. HQ9+
implementation
ざっくりと大意
・HQ9+という特殊なプログラミング言語。
・与えられる一行の文字列pをHQ9+に処理させた場合に何か出力されるならYES、そうでなければNO。
方針のようなもの
・if〜inでいいかな?
n=(raw_input()) print 'YES' if 'H' in n or 'Q' in n or '9' in n else 'NO'
単純な問題だったので一発AC。
なにか違う手法を探して1240261のrng_58さんの回答。
s = raw_input() if any(c in "HQ9" for c in s): print "YES" else: print "NO"
B. Unary
implementation
ざっくりと大意
・記号の羅列を ">" → 1000 等の問題文上のでルールに従って置換して、2進数表記なのを10進数にすればいいのかな?
方針のようなもの
・そのとおりに
ans,mod='',1000003 n=raw_input() l=['>','<','+','-','.',',','[',']'] for i in n: ans+=str(bin(l.index(i)+8)[2:]) print int(ans,2)%mod
最初は問題文のアレを全てif分岐で書こうとしてる最中に上の書き方に気づいた。いちお両方共提出でAC。上の書き方のほうが処理速度早かった。
C. Turing Tape
解読不能でまた後日