3. В таблице ниже показан фрагмент базы данных продуктов. Назовите продукт, который соответствует приведенным ниже условиям сортировки. Цена(1 кг) 160) и (количество =20) Продукт Количество | Цена (тенге) 11 160 20 1200 Макарон Мясо Хлеб Масло Соль 6 60 15 1700 30 90 _ [4] [
267
413
Ответы на вопрос:
Такой вариант на простом паскале со стратегией жадность var n, s, i: integer; x: array[1..100]of integer; answer: string; begin readln(n); for i : = 1 to n do read(x[i]); readln(s); answer : = inttostr(s) + ' = '; for i : = n downto 1 do begin answer : = answer + inttostr(s div x[i]) + '*' + inttostr(x[i]); s : = s mod x[i]; if i > 1 then answer : = answer + ' + '; end; if s < > 0 then writeln('no') else writeln(answer); end. более полный и правильный вариант решения, но и куда более сложный //pascalabc.net 3.1 сборка 1200 uses system.collections.generic; uses system; var x : = new list< integer> ; c : = new list< tuple< string, integer> > ; procedure getparcelling(sum, step: integer; coefficients: string; count: integer); begin if step > = x.count then begin if sum = 0 then c.add((coefficients, count)); exit; end; if step < 0 then step : = 0; for var j : = 0 to (sum div x[step]) do begin var s : = ''; if j > 0 then begin if step > 0 then s += ' + '; s += inttostr(j) + '*' + inttostr(x[step]); end; getparcelling(sum - x[step] * j, step + 1, coefficients + s, count + j); end; end; begin x : = readarrinteger('x: ', readinteger('n ='; var sum : = readinteger('sum ='); getparcelling(sum, 0, '', 0); if c.count = 0 then writeln('no') else begin var min : = c.min(cc -> cc.item2); println(c.where(cc -> cc.item2 = min)); end; end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Gulnarhidayetova10.07.2020 17:40
-
paraxatdin24.01.2023 09:15
-
SashaKromberg23.02.2022 23:45
-
ннннннннр24.08.2020 23:59
-
raisara20.04.2021 01:00
-
BooHazz09.09.2021 14:17
-
Kxoma24.06.2021 23:22
-
rtgreezz31.03.2023 16:45
-
nastriopha114.09.2021 03:42
-
ampleev200209.06.2021 18:43
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.