Size: a a a

Советский Angular

2020 July 24

J💖

JSON Jenny 💖 in Советский Angular
Вертихвост キバ 🏡🦊
Любую задачу можно решить перебором, но какой в этом смысл?)
решить задачу
источник

NI

Nabi Isakhanov in Советский Angular
на ум приходит че то типа
const total  = bags.reduce((a, c) => a+c);
return total - (total % 3)
но не уверен что это сработает
источник

m

mefest in Советский Angular
Вертихвост キバ 🏡🦊
Любую задачу можно решить перебором, но какой в этом смысл?)
в решении задачки
источник

NI

Nabi Isakhanov in Советский Angular
нам же все таки нужно не общее число которое делится на 3 а конкретные мешки из которых его можно составить, да?
источник

hm

hime mononoke in Советский Angular
Вертихвост キバ 🏡🦊
Любую задачу можно решить перебором, но какой в этом смысл?)
import itertools
import random

N = int(input('Число пакетов: '))
n = []
n3 = []
for i in range(N):
 weight = random.randint(0, 9)
 n.append(weight)
print(n)
for i in range(1, len(n)):
 perm = []
 perm = itertools.permutations(n, i)
 for j in list(perm):
   sum = 0
   for k in j:
     sum+=k
   if sum%3 == 0:
     n3.append(j)
print(max(n3))
источник

hm

hime mononoke in Советский Angular
Число пакетов: 4
[3, 1, 9, 9]
(9, 9, 3)
источник

m

mefest in Советский Angular
Вертихвост キバ 🏡🦊
✨🦄 Три лошади

Лошадям нужна еда, они едят овес. Каждый день фермер привозит овес для лошадей. Овес находится в разных пачках от 0 до 9 кг. Надо взять эти пачки и накормить лошадей поровну.

Есть список цифр [ n1, n2, n3, … ]. Необходимо найти самое большое число, которое можно получить комбинируя эти цифры и которое бы делилось на 3.

☝️ ПРИМЕР 1
 Input:     [3, 1, 4, 1]
 Output:  4311

✌️ ПРИМЕР 2
 Input:     [3, 1, 4, 1, 5, 9]
 Output:  94311
сортируем, компануем все числа, если не кратное 3 то меняем последнее его число  на следющее
источник

hm

hime mononoke in Советский Angular
hime mononoke
import itertools
import random

N = int(input('Число пакетов: '))
n = []
n3 = []
for i in range(N):
 weight = random.randint(0, 9)
 n.append(weight)
print(n)
for i in range(1, len(n)):
 perm = []
 perm = itertools.permutations(n, i)
 for j in list(perm):
   sum = 0
   for k in j:
     sum+=k
   if sum%3 == 0:
     n3.append(j)
print(max(n3))
На большом числе пакетов работает херово
источник

m

mefest in Советский Angular
hime mononoke
На большом числе пакетов работает херово
а ты сортируешь?
источник

hm

hime mononoke in Советский Angular
mefest
а ты сортируешь?
нет. но я решил сам. без гугла. уже достижение.
источник

m

mefest in Советский Angular
hime mononoke
нет. но я решил сам. без гугла. уже достижение.
попробуй сортировать?
источник

hm

hime mononoke in Советский Angular
mefest
попробуй сортировать?
import itertools
import random

N = int(input('Число пакетов: '))
n = []
n3 = []
for i in range(N):
 weight = random.randint(0, 9)
 n.append(weight)
print(n)
n.sort(reverse=True)
print(n)
sum = 0
i = len(n)
while sum % 3 != 0:
 for j in range(i):
   sum += n[j]
 i -= 1
for j in range(i+1):
 print(n[j], end='')


Спасибо. Работает.
источник

hm

hime mononoke in Советский Angular
hime mononoke
import itertools
import random

N = int(input('Число пакетов: '))
n = []
n3 = []
for i in range(N):
 weight = random.randint(0, 9)
 n.append(weight)
print(n)
n.sort(reverse=True)
print(n)
sum = 0
i = len(n)
while sum % 3 != 0:
 for j in range(i):
   sum += n[j]
 i -= 1
for j in range(i+1):
 print(n[j], end='')


Спасибо. Работает.
А, не, какая херня
источник

N👩

Nikita 👩🏻‍💻💭... in Советский Angular
там ща опять битовые маски будут да
источник

m

mefest in Советский Angular
Nikita 👩🏻‍💻💭
там ща опять битовые маски будут да
крутяк, давай!
источник

N👩

Nikita 👩🏻‍💻💭... in Советский Angular
mefest
крутяк, давай!
я не умею
источник

hm

hime mononoke in Советский Angular
Вертихвост キバ 🏡🦊
✨🦄 Три лошади

Лошадям нужна еда, они едят овес. Каждый день фермер привозит овес для лошадей. Овес находится в разных пачках от 0 до 9 кг. Надо взять эти пачки и накормить лошадей поровну.

Есть список цифр [ n1, n2, n3, … ]. Необходимо найти самое большое число, которое можно получить комбинируя эти цифры и которое бы делилось на 3.

☝️ ПРИМЕР 1
 Input:     [3, 1, 4, 1]
 Output:  4311

✌️ ПРИМЕР 2
 Input:     [3, 1, 4, 1, 5, 9]
 Output:  94311
А что если такого числа нет?
источник

J💖

JSON Jenny 💖 in Советский Angular
Nabi Isakhanov
нам же все таки нужно не общее число которое делится на 3 а конкретные мешки из которых его можно составить, да?
не все числа могут быть включены в составление числа
источник

NI

Nabi Isakhanov in Советский Angular
JSON Jenny 💖
не все числа могут быть включены в составление числа
почему
источник

hm

hime mononoke in Советский Angular
ну к примеру числа в списке 4. 1, 0
источник