Alexy7406
22.05.2023 00:04

Паскаль Задача 3. Ремонт забора Имя входного файла: стандартный ввод
Имя выходного файла: стандартный вывод
Ограничение по времени: 1 секунда
Ограничение по памяти: 512 мегабайт
Забор состоит из N одинаковых вертикальных досок. Некоторые из досок сгнили и нуждаются в
замене, для каждой доски известно, нужно ли её заменить. Для ремонта забора можно использовать
продающиеся в магазине щиты, которые бывают L разных видов: шириной в 1 доску, в 2 доски, ...,
в L досок. Щит нельзя разрезать на части, то есть одним щитом можно заменить не более любых
L подряд идущих досок. При этом можно менять не только сгнившие доски, но и хорошие.
Оказалось, что все щиты стоят одинаково, независимо от размера щита. Определите, какое наименьшее число щитов необходимо приобрести, чтобы починить весь забор.
Формат входных данных
Первая строка входных данных содержит целое число L (L > 0) — максимальный размер щита.
Во второй строке входных данных записано целое число N (N > 0) — количество досок в заборе.
Следующие N строк содержат по одному числу, равному 0 или 1. Число 1 обозначает, что соответствующая доска в заборе нуждается в замене, число 0 — что доска может быть сохранена.
Формат выходных данных
Программа должна вывести одно целое число — минимальное число щитов, которое необходимо
приобрести для ремонта всего забора.
Система оценивания
Решение, правильно работающее только для случаев, когда числа L и N не превосходят 1000,
будет оцениваться в
В будет оцениваться решение, правильно работающее, когда числа L и N не превосходят 105
.
Пример
стандартный ввод стандартный вывод
3
8
0
0
1
0
1
0
1
0
3
Пояснение к примеру
Максимальная ширина одного щита равна 3. Забор состоит из 8 досок, нужно заменить доски
с номерами 3, 5 и 7. Для этого достаточно двух щитов, например, одним щитом меняем доски с
номерами 3, 4, 5, а другим щитом меняем доску с номером 7

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Gelmi
17.01.2020 07:22

Відповідь:

Для подготовки проекта по истории "Великие князья Руси Украины" ученику 9 класса следует выполнить следующие действия:

Определить список великих князей Руси Украины, о которых будет идти речь в проекте. Обычно это Олег, Игорь, Святослав, Владимир Святой, Ярослав Мудрый и другие. Их количество может варьироваться в зависимости от объема проекта и требований учителя.

Используйте интернет для поиска биографических данных, портретов и сведений о каждом из выбранных князей. Ключевые слова, которые могут в поиске информации, включают "великие князья Руси Украины", "биография князей Руси Украины", "портреты великих князей Руси Украины" и т. д.

Просмотрите надежные источники, такие как энциклопедии, исторические сайты, учебники и академические статьи. Обратите внимание на авторитетность источника и проверьте информацию в нескольких независимых источниках, чтобы удостовериться в ее точности.

Запишите биографические данные каждого князя, включая информацию о его правлении, важных событиях, политической деятельности, военных достижениях и вкладе в развитие Руси Украины.

Найдите портреты великих князей Руси Украины. Они могут быть доступны на исторических сайтах, в музеях, в архивах или в книгах об истории. Если нет точных портретов, можно использовать изображения, реконструирующие внешность князей на основе исторических данных.

Оформите полученную информацию и портреты в виде проекта. Используйте четкую структуру и разбейте информацию по каждому князю. Можно добавить карты, временные линии или другие иллюстрации, чтобы визуализировать исторический контекст.

Важно учитывать следующие факторы, влияющие на поиск нужной информации:

Используйте надежные источники, чтобы получить точную и достоверную информацию.

0,0(0 оценок)
Ответ:
Unknown112
17.01.2020 07:22

Конечно! Вот пример программы на языке программирования Си, которая заполняет матрицу случайными числами и отображает правую половину матрицы на левую зеркально симметрично относительно вертикальной оси:

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

#define MATRIX_SIZE 6 // Размер матрицы

void fillMatrix(int matrix[][MATRIX_SIZE]) {

srand(time(NULL)); // Инициализация генератора случайных чисел

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

for (int j = 0; j < MATRIX_SIZE; j++) {

matrix[i][j] = rand() % 10; // Генерация случайного числа от 0 до 9

}

}

}

void mirrorMatrix(int matrix[][MATRIX_SIZE]) {

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

for (int j = 0; j < MATRIX_SIZE / 2; j++) {

matrix[i][MATRIX_SIZE - 1 - j] = matrix[i][j]; // Копирование значения из правой половины в левую

}

}

}

void printMatrix(int matrix[][MATRIX_SIZE]) {

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

for (int j = 0; j < MATRIX_SIZE; j++) {

printf("%2d ", matrix[i][j]);

}

printf("\n");

}

}

int main() {

int matrix[MATRIX_SIZE][MATRIX_SIZE];

fillMatrix(matrix);

printf("Исходная матрица:\n");

printMatrix(matrix);

mirrorMatrix(matrix);

printf("\nМатрица с отраженной правой половиной:\n");

printMatrix(matrix);

return 0;

}

В этом примере мы используем функции fillMatrix для заполнения матрицы случайными числами, mirrorMatrix для отображения правой половины матрицы на левую, и printMatrix для вывода матрицы на экран. Размер матрицы задан константой MATRIX_SIZE, которую можно изменить по необходимости.

Программа сначала заполняет матрицу случайными числами с функции fillMatrix. Затем она выводит исходную матрицу с функции printMatrix. После этого вызывается функция mirrorMatrix, которая отражает правую половину матрицы на левую. Наконец, программа выводит матрицу с отраженной правой половиной с функции printMatrix.

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