Информатика 2 месяца назад ilai2541358

Кинотеатр
В кинотеатре n рядов по m мест в каждом. В двумерном массиве хранится информация о проданных билетах, число 1 означает, что билет на данное место уже продан, число 0 означает, что место свободно. Поступил запрос на продажу k билетов на соседние места в одном ряду. Определите, можно ли выполнить такой запрос.

Входные данные

Программа получает на вход числа n≤30 и m≤30. Далее идут n строк, содержащих m чисел (0 или 1), разделённых пробелами. Затем дано число k.

Выходные данные

Программа должна вывести номер ряда, в котором есть k подряд идущих свободных мест. Если таких рядов несколько, то выведите номер наименьшего подходящего ряда. Если подходящего ряда нет, выведите число 0.

СРОЧНО!!!

Ответ
1
vladgerasimov306

Ответ:

Объяснени#include <iostream>

using namespace std;

int main() {

int mx[30][30];

int n, m;

cin >> n >> m;

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

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

cin >> mx[i][j];

}

}

int x;

int k = 0;

cin >> x;

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

int y = 0;

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

if (mx[i][j]) y = 0;

else ++y;

if (x == y) break;

}

if (x == y) {

k = i + 1;

break;

}

}

cout << k << endl;

system("pause > nul");

}

е: