8VC Venture Cup 2016 - Elimination Round
はい。
http://codeforces.com/contest/626
A. Robot Sequence
ざっくりと大意
・四角のマスが無限に並んでいるフィールドでロボットが命令に合わせて上下左右に移動する。
・あとで
B. Cards
ざっくりと大意
・red,gree,blueの三色、RGBのカードがある。
・異なる色のカード2つ(隣接してなくてもよい)を選んで3番目の色で新たなカードに交換する。
・同じ色のカード2つ(隣接してなくてもよい)を選んで、その色で新たなカードに交換する。
・上記の2操作を繰り返して最後に残りうるカードは何か。
Python2
n=int(raw_input()) s=raw_input() d={} for i in s: if i in d: d[i]+=1 else: d[i]=1 if len(d)==1: for i in d: print i elif len(d)==3: print 'BGR' else: tmp=[] for i in d: tmp.append(i) if d[tmp[0]]==d[tmp[1]]==1: print 'RGB'.replace(tmp[0],'').replace(tmp[1],'') elif d[tmp[0]]==1 or d[tmp[1]]==1: ch='RGB'.replace(tmp[0],'').replace(tmp[1],'') tw=[i for i in d if d[i]==1] tw.append(ch) tw.sort() print ''.join(tw) else: print 'BGR'
もっと短く出来ると思う。1色しかなければその色しか残らない、3色あれば3色いずれも残りうる、2色2個ずつ以上あれば3色いずれも残りうる、2色のどちらかが1個だと3番目の色と1個しかないものの2色が残りうる。。。はず。いくつか適当に例を作ってシミュすればそうなるはず。