В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
PashinDaniil
PashinDaniil
23.04.2021 14:54 •  Информатика

Определи размеры данной таблицы.

Показать ответ
Ответ:
YeezyM
YeezyM
23.11.2022 05:39

Составим таблицу, где по горизонтале расположим страны, по вертикали номера высказываний, а в середине места, которые могут занять команды по мнению экспертов.

               Г             И               К             Р              У

1.                                             1                             3

2.            4                                                              5

3.            4                               1

4.                            2                             1

5.            1              5

 

Если мы предположим в первом высказывании, что правда - это Китай на 1 месте, то проследив дальше, мы столкнемся, что украина и италия должны быть одновременно на 5, а этого быть не может.

Тогда предполагаем, что в первом высказывании верно утверждение - украина на 3 месте и все выстраивается:

1 место - Россия, 2 место - Китай, 3 место - Украина, 4 место - Германия, 5 место - Италия.

0,0(0 оценок)
Ответ:
Polika127
Polika127
04.05.2020 17:16
Const
  nn=100; { предельное количество номиналов банкнот }
type
  bnk=longint;
var
  nom,res:array[1..nn] of bnk;
  i,n,koln:integer;
  sum:bnk;

procedure Sort(n:integer);
var
  i,j:integer;
  t:bnk;
begin
  for i := 1 to n-1 do
    for j := 1 to n-i do
      if nom[j] > nom[j+1] then
      begin t := nom[j]; nom[j] := nom[j+1]; nom[j+1] := t end
end;

begin
  Readln(n);
  for i:=1 to n do Read(nom[i]);
  Readln(sum);
  Sort(n);
  koln:=0; i:=n;
  while sum>0 do begin
    while nom[i]>sum do Dec(i);
    Inc(koln); res[koln]:=nom[i];
    sum:=sum mod nom[i];
    if (sum<nom[1]) and (sum<>0) then begin sum:=0; koln:=-1 end
  end;
  if koln=0 then koln:=-1;
  Writeln(koln);
  for i:=1 to koln do Write(res[i],' ');
  Writeln
end.

Тестовые решения
Контрольный пример:
5
1 3 7 12 32
40
3
32 7 1
Еще один пример:
8
1 5 10 50 100 500 1000 5000
4586
6
1000 500 50 10 5 1
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота