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

Стоимость туристических путевок
название месяца
стоимость путевки
14 дней
среднегодовой
объем
7 дней
21 день
| итого

Показать ответ
Ответ:
serbakovasvetas
serbakovasvetas
04.04.2020 14:40

Полагаю ответ кроется в нахождении элемента в этом списке, который и повторяется ровно столько количество раз, скольки и равен индекс данного выражения. Т.е. если у нас 5 утверждений, то утверждение с "1" будет правдиво для себя же. Если у нас будет 2 утверждения с двойками, то они могут ссылаться друг на друга соответственно.

Если будет четыре "4", то они также могут ссылаться друг на друга, что они правдивы и тогда можно заверить, что они верны.

Программа (C++):

#include <iostream>

#include <map>

using namespace std;

int main()

{

setlocale(LC_ALL, "Russian");

int result=0;

int n, elem;

list<int> list_elems;

map<int, int> elems_map;

   cout << "Введите N\n";

cin >> n;

cout << "Введите числа в утверждениях\n";

for (int i = 0; i < n; i++) {

 cin >> elem;

 list_elems.push_back(elem);

}

for (auto const& f : list_elems)

 elems_map[f]++;

for (auto const& b : elems_map) {

 if (b.first == b.second && result < b.first)

  result = b.first;

}

if (result == 0)

 cout << -1;

else

 cout << result << " правдивы";

return 0;

}

0,0(0 оценок)
Ответ:
vannik78
vannik78
31.12.2022 19:49

На PascalABC.NET, потому что в остальных паскалях функция не может вернуть массив, а по условию она должна его заполнять.

function Init(n: integer): array of integer;

begin

 Result := new integer[n];

 Result[0] := 9;

 for var k := 1 to Result.High do

   Result[k] := (5 * Result[k-1] + 7) mod 1000;

end;

function IsSumM(n, M: integer): boolean;

begin

 var s := 0;

 while n > 0 do

 begin

   s += n mod 10;

   n := n div 10

 end;

 Result := s = M  

end;

begin

 var (n, M) := ReadInteger2('Введи n и М');

 Init(n).Println.Where(p -> IsSumM(p, M)).Println

end.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота