На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 3
ссылка на сообщение  Отправлено: 08.06.22 20:11. Заголовок: 23 pзадание № 170


подскажите в чем ошибка, ответ не сходится.
 
s1=2
s2=3
b=[]
a=[s1+3,s2]
b.append(a)
a=[s1*4,s2]
b.append(a)
a=[s1,s2+5]
b.append(a)
a=[s1,s2*2]
b.append(a)

for i in range(0,4):
l=len(b)

for j in range(0,l):
t=b[0]
a=[t[0]+3,t[1]]
b.append(a)
a=[t[0]*4,t[1]]
b.append(a)
a=[t[0],t[1]+5]
b.append(a)
a=[t[0],t[1]*2]
b.append(a)
del b[0]
print(b)
a=[]
z=0
for k in b:
t=k[0]
t1=k[1] #записываю элементы пары по возрастанию
if t>t1:
l=t
t=t1
t1=l
k=[t,t1]
if k not in a: # если пары нет в массиве, добавляю
a.append(k)
for k in a: # НОД
t=k[0]
t1=k[1]
while t!=t1:
if t>t1:
t=t-t1
else:
t1=t1-t
if t ==1:
z+=1
print(k)
print(z)


Вот теперь сходится с ответом.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 2 [только новые]


Администратор




Сообщение: 3574
ссылка на сообщение  Отправлено: 09.06.22 09:53. Заголовок: def coprime(a, b): ..


 def coprime(a, b): 
while b:
a, b = b, a % b
return a == 1

pairs = set()

NUM_CMD = 5
def Landysh( a, b, n = 0 ):
global pairs
if n == NUM_CMD:
if coprime(a, b):
pairs.add( (a, b) if a < b else (b, a) )
return
Landysh( a + 3, b, n + 1 )
Landysh( a * 4, b, n + 1 )
Landysh( a, b + 5, n + 1 )
Landysh( a, b * 2, n + 1 )

Landysh(2, 3)

print( len(pairs) )


___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить



Сообщение: 4
ссылка на сообщение  Отправлено: 09.06.22 16:24. Заголовок: о боже 1 команда при..


о боже 1 команда прибавляет 3, а я прибавляла 1. Но ваше решение красивое и компактное. Спасибо за ответ, только у вас увидела, что прибавляю не то, два дня искала ошибку :(

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 2199
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет