君はまるで砂漠に咲く、一輪の花。

僕はその花に引き寄せられる蝶。

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

解読不能でまた後日