AtCoder Beginner Contest 046 参加記
はい。 ooxo 1181(+44)
http://abc046.contest.atcoder.jp
はい。A,B,Dは割りとスムーズに解いて暫定順位1ページ目だったけどCが通せず残念に。。。
A - AtCoDeerくんとペンキ
Python2
print len(set(map(int,raw_input().split())))
setにして要素の個数がペンキの色の種類になるはず。
B - AtCoDeerくんとボール色塗り
Python2
n,k=map(int,raw_input().split()) ans=chk=1 for i in range(n): if i==0: ans*=k else: ans*=(k-1) print ans
最初は全色k使える次以降は同じ色は使えないのでk-1になる。
C - AtCoDeerくんと選挙速報
WAでした。。
D - AtCoDeerくんと変なじゃんけん
Python2
s=raw_input() g=p=0 ans=chk=0 for i in s: if i=='g' and g>p: ans+=1 p+=1 elif i=='g': g+=1 if i=='p' and g>p: p+=1 elif i=='p': g+=1 ans-=1 print ans
出してる回数によってパーが使えないことが有る。というか後から気付いたけど自分が出す手はgpgpgp...のグーパー交互固定で問題ないと思う。使えるならパーを出すのが最善であり、パーの回数<=グーの回数の制限内でならグーパー交互固定が最善手になるはず。
Python2
s=raw_input() ans=0 for a,i in enumerate(s): if a%2==0 and i=='p': ans-=1 elif a%2==1 and i=='g': ans+=1 print ans
試したらACになった。。