Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n-1
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid-1-inf)%2==1 and D[inf] != D[mid]) or ((mid-1-inf)%2==0 and D[inf] == D[mid]):
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid

Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n-1
k = 25
while k:
    mid = (sup+inf)//2
    k -= 1
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid-1-inf)&1 and D[inf] != D[mid]) or (~(mid-1-inf)&1 and D[inf] == D[mid]):
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid

Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n-1
k = 25
while k:
    mid = (sup+inf)//2
    k -= 1
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if D[inf] != D[mid] and (mid-1-inf)&1:
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid

Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n-1
k = 25
while k:
    mid = (sup+inf)//2
    k -= 1
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if D[inf] != D[mid]:
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid

Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
sys.stdout.flush()
print(0)
s = input()
if s == "Vacant":
    sys.exit()
D[0] = s
inf = 0
sys.stdout.flush()
print(n-1)
s = input()
if s == "Vacant":
    sys.exit()
sup = n-1
D[n-1] = s
while 1:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if D[inf] != D[mid]:
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid

Buggy python submission (verdict: Time Limit Exceeded):
import sys
n = int(input())
D = {}
sys.stdout.flush()
print(0)
s = input()
if s == "Vacant":
    sys.exit()
D[0] = s
inf = 0
sys.stdout.flush()
print(n-1)
s = input()
if s == "Vacant":
    sys.exit()
sup = n-1
D[n-1] = s
while 1:
    mid = (sup+inf)//2
    sys.stdout.flush()
    print(mid)
    s = input()
    if s == "Vacant":
        break
    else:
        D[mid] = s
        if D[inf] != D[mid]:
            sup = mid-1
        else:
            inf = mid+1

Fixed submission:
import sys
n = int(input())
D = {}
for i in [0,n-1]:
    print(i,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    D[i] = s
inf = 0
sup = n
while True:
    mid = (sup+inf)//2
    print(mid,flush=True)
    s = input()
    if s == "Vacant":
        sys.exit()
    else:
        D[mid] = s
        if ((mid%2==inf%2) != (D[mid] == D[inf])):
            sup = mid
        else:
            inf = mid