Автор | Сообщение |
|
Отправлено: 23.04.24 01:11. Заголовок: ошибка в 27_37
Генерировал списки и проверял через полный перебор=> код верный. Плюс в файлах нет решения, если можно приложите мое. #Малиновский С.В. f=open('27-37a.txt') n=int(f.readline()) k=[0]*10_001 cnt=0 for i in range(n): x=int(f.readline()) if x%2==0: for j in range(x//2): cnt+=k[j]*k[x-j] cnt+=(k[j]*(k[j]-1))//2 else: for j in range(x//2+1): cnt+=k[j]*k[x-j] k[x]+=1 print(cnt)
|
|
|
Ответов - 3
[только новые]
|
|
|
Отправлено: 23.04.24 09:22. Заголовок: Добрый день! (№ 2712..
Добрый день! цитата: | (№ 2712) (А.А. Богданов) Имеется набор данных, состоящий из положительных целых чисел, не превышающих 10000. Необходимо найти количество троек, в которых сумма первых двух элементов равна третьему элементу. Порядок элементов тройки должен соответствовать порядку в последовательности. |
| Если речь идет об этой задаче, то ответ верен s=[int(c) for c in open('d://27-37a.txt')][1:] kol=0 for i in range(len(s)): for j in range(i+1,len(s)): for k in range(j+1,len(s)): kol+=s[ i]+s[j]==s[k] print(kol)
|
|
|
|
Отправлено: 05.05.24 11:31. Заголовок: ответка
Добрый день на файл "А" ответ верный, а файл "В" ваш код не потянет. В файле "В" ответ не верный.
|
|
|
|
Отправлено: 08.05.24 13:06. Заголовок: Если я правильно пон..
Если я правильно поняла вашу идею, эту строку надо поправить: цитата: | cnt+=(k[x//2]*(k[x//2]-1))//2 |
| (Это же вы составляете число X из двух одинаковых слагаемых, каждое из которых равно половине x) теперь ответ сходится.
|
|
|
|