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

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

Codeforces Round #163 (Div. 2)

はい。
http://codeforces.com/contest/266

A. Stones on the Table

ざっくりと大意

・n個の位置がred,blue,greenのいずれかの色のものが並んでいる
・隣接する石が自身と異なる色、若しくは既に端っこで隣接が無いようにするときに、与えられた最初の石の並びから幾つ取り除くか?

方針のようなもの

・単純に先頭から見ていけばなんとかなるんじゃないかな?

n=int(raw_input())
w=raw_input()
ans=0
chk=w[0]
for i in xrange(1,n):
    if chk==w[i]:
        ans+=1
    else:
        chk=w[i]
print ans

B. Queue at the School

ざっくりと大意

・食堂でn人の男女が並んでいる。
・前にGがいるBはGを抜かして1つ前に出る。というのをt回行う。

Python2

n,t=map(int,raw_input().split())
l=list(raw_input())
f=0
for i in range(t):
    for j in range(n-1,0,-1):
        if l[j]=='G' and l[j-1]=='B' and f==0:
            l[j],l[j-1]=l[j-1],l[j]
            f=1
        else:
            f=0
print ''.join(l)

GBの並び方によって1度に延々と抜かされてしまうことのないようにフラグを立てて連続で抜かれないように処理をした。