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

Дано масив А, який містить елементи від 0 до 10^6. «Стисніть» його, пересунувши нульові елементи в кінець масиву. Якщо даний масив "Стиснути" не можливо, тобто немає нулів, то виведіть "not found". Вхідні дані: У першому рядку знаходиться одне числа N - кількість елементів масиву. Далі йдуть N чисел — елементи масиву, розділених пробілами.

Вихідні дані: "Стиснутий" масив або "not found" якщо це зробити не можливо.

Показать ответ
Ответ:
ainura19921
ainura19921
14.08.2022 17:17
Единственный разбить запись 1311 на два числа – это 13 и 11 (числа 131 и 311 не могут образоваться в результате сложения значений двух десятичных цифр)
2) Сумма первой и второй цифр должна быть наименьшей (тогда и число будет меньше!), она равна 11; тогда сумма значений двух последних цифр равна 13
3) Для того, чтобы всё число было минимально, числа, составленные из первых двух и последних двух цифр должны быть минимальными соответственно для сумм 11 и 13
4) Минимальное двузначное число, у которого сумма значений цифр равна 11, - это 29, с этих двух цифр начинается исходное четырёхзначное число
5) Сумма двух последних цифр – 13, минимальное двузначное число с такой суммой цифр – 49.

ответ: 2949
0,0(0 оценок)
Ответ:
Неко163
Неко163
24.11.2020 02:01
// PascalABC.NET 3.2, сборка 1362 от 14.12.2016
// Внимание! В других версиях языка работа не гарантируется!

begin
  var m:=ReadInteger('Количество строк в массиве:');
  var n:=ReadInteger('Количество столбцов в массиве:');
  Writeln('*** Исходный массив A[',m,',',n,'] ***');
  var a:=MatrRandom(m,n,-50,50);
  a.Println(4);
  Writeln(4*a.ColCount*'-');
  var k:=a.Rows.Select(x->x.Aggregate(0,(x,y)->x+y)).ToArray.IndexMax;
  for var j:=0 to (n-1) div 2 do Swap(a[k,j],a[k,n-1-j]);
  a.Println(4)
end.

Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 5
*** Исходный массив A[4,5] ***
  29  36 -50  -4 -32
  -1 -10  -7 -47 -50
 -16   4  48 -41 -43
   8  46  45  14 -44

  29  36 -50  -4 -32
  -1 -10  -7 -47 -50
 -16   4  48 -41 -43
 -44  14  45  46   8
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота