Чередование в питоне
Перезадаю этот вопрос,но уже с самой задачой и полным решением.Я делал задачу, где надо было поочередно делить числа. Я эту проблему сделал вот таким способом:(задача:http://codeforces.com/problemset/problem/119/A)
#funct
def gcd(x,y):
while x!=0 and y!=0:
if x>y:
x=x%y
else:
y=y%x
return x+y
def chet(b,x,y,all):
if b%2==1:
all=all-gcd(x,all)
if all==0:
print("0")
else:
all=all-gcd(y,all)
if all==0:
print("1")
return all
#program
sem,anti,all=map(int,input().split())
b=1
while all>0:
all=chet(b,sem,anti,all)
b+=1
но хочу услышать ваши способы.
Ответы (1 шт):
Автор решения: frozencoast
→ Ссылка
Я бы решил так:
data = list(map(int, input().split()))
# Наибольший общий делитель
def nod(x, y):
if y > 0:
k = x % y
return nod(y, k)
else:
return x
player = 0
while data[2] > 0:
data[2] -= nod(data[player], data[2])
player = 1 - player
print(1 - player)