ARC#012

A - 週末

週末

print{"Sunday":0,"Monday":5,"Tuesday":4,"Wednesday":3,"Thursday":2,"Friday":1,"Saturday":0}[raw_input()]

B - アキレスと亀

アキレスと亀

N,va,vb,L = map(int,raw_input().split())
for i in range(N):
     L -= float(va-vb)*L/va
print "%.12f"%L

C - 五目並べチェッカー

五目並べチェッカー

黒石の個数をb、白石の個数をwとする。b=wもしくはb=w+1であることが必要条件。勝利条件がどうこうというのは、1手戻して(最後に打った側の石をどれか1個取り除いて)5個以上並んだ石が存在しなくなるかどうかを調べれば良い。

W = 19
b = [list(raw_input()) for i in range(W)]

def check():
    m = 0
    for i in range(W):
        bc = wc = 0
        for j in range(W):
            if b[i][j]=="o": bc += 1
            else: m = max(m,bc); bc = 0
            if b[i][j]=="x": wc += 1
            else: m = max(m,wc); wc = 0
        m = max(m,max(bc,wc))
    for i in range(W):
        bc = wc = 0
        for j in range(W):
            if b[j][i]=="o": bc += 1
            else: m = max(m,bc); bc = 0
            if b[j][i]=="x": wc += 1
            else: m = max(m,wc); wc = 0
        m = max(m,max(bc,wc))
    for i in range(-W,W):
        bc = wc = 0
        for j in range(W):
         if 0<=i+j<W:
            if b[i+j][j]=="o": bc += 1
            else: m = max(m,bc); bc = 0
            if b[i+j][j]=="x": wc += 1
            else: m = max(m,wc); wc = 0
        m = max(m,max(bc,wc))
    for i in range(2*W):
        bc = wc = 0
        for j in range(W):
         if 0<=i-j<W:
            if b[i-j][j]=="o": bc += 1
            else: m = max(m,bc); bc = 0
            if b[i-j][j]=="x": wc += 1
            else: m = max(m,wc); wc = 0
        m = max(m,max(bc,wc))
    return m<5

bc = 0
wc = 0
for i in range(W):
    for j in range(W):
        if b[i][j]=="o": bc += 1
        if b[i][j]=="x": wc += 1

ans = False
if check() and ( bc==wc or bc==wc+1 ):
    ans = True
if bc==wc:
    for i in range(W):
        for j in range(W):
            if b[i][j]=="x":
                b[i][j] = "."
                if check():
                    ans = True
                b[i][j] = "x"
if bc==wc+1:
    for i in range(W):
        for j in range(W):
            if b[i][j]=="o":
                b[i][j] = "."
                if check():
                    ans = True
                b[i][j] = "o"
print "YES" if ans else "NO"