, что не так с моим решением? Кинотеатр
В кинотеатре n рядов по m мест в каждом. В двумерном массиве хранится информация о проданных билетах, число 1 означает, что билет на данное место уже продан, число 0 означает, что место свободно. Поступил запрос на продажу k билетов на соседние места в одном ряду. Определите, можно ли выполнить такой запрос.
Входные данные
Программа получает на вход числа n≤30 и m≤30. Далее идут n строк, содержащих m чисел (0 или 1), разделённых пробелами. Затем дано число k.
Выходные данные
Программа должна вывести номер ряда, в котором есть k подряд идущих свободных мест. Если таких рядов несколько, то выведите номер наименьшего подходящего ряда. Если подходящего ряда нет, выведите число 0.
Примеры
Ввод
2 4
1 1 0 0
0 0 1 1
4
Вывод
0
#include
#include
using namespace std;
int main()
{
int n,l,d,e,k,m;
cin >> n >> m;
vector > t(n, vector (m));
for (int i = 0; i < t.size(); ++i) {
for (int j = 0; j < t[i].size(); ++j) {
cin >> t[i][j];
}
}
cin>>k;
l = 0;
e = 0;
bool flag = false;
for (int i = 0; i < t.size(); ++i) {
e = 0;
d = 0;
for (int j = 0; j < t[i].size() - 1; ++j){
if (flag == false) {
if (t[i][j] == 0 && t[i][j + 1] == 0) {
e = e + 1;
d = e;
}
else {
e = 0;
}
if (e + 1 >= k && e != 0) {
l = i + 1;
flag = true;
}
}
}
}
cout< return 0;
}
1)
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
void print_matrix(int **matrix, const int n)
{
for (int jjj = 0; jjj < n; jjj++)
{
for (int kkk = 0; kkk < n; kkk++)
cout << matrix[jjj][kkk] << " ";
cout << endl;
};
}
void fill_matrix(int **matrix, const int n)
{
int min = 0;
int max = 100;
for (int jjj = 0; jjj < n; jjj++)
for (int kkk = 0; kkk < n; kkk++)
matrix[jjj][kkk] = rand() % (max - min + 1) + min;
}
void transform_matrix(int **matrix1, int **matrix2, const int n)
{
int xswap = rand() % n;
int yswap = rand() % n;
cout << "\n"
<< xswap << " " << yswap << endl;
for (int jjj = xswap; jjj < n; jjj++)
for (int kkk = 0; kkk < n; kkk++)
matrix2[jjj][kkk] = matrix1[jjj - xswap][kkk];
for (int jjj = 0; jjj < xswap; jjj++)
for (int kkk = 0; kkk < n; kkk++)
matrix2[jjj][kkk] = matrix1[jjj + n - xswap][kkk];
for (int jjj = 0; jjj < n; jjj++)
for (int kkk = yswap; kkk < n; kkk++)
matrix2[jjj][kkk] = matrix1[jjj][kkk - yswap];
for (int jjj = 0; jjj < n; jjj++)
for (int kkk = 0; kkk < yswap; kkk++)
matrix2[jjj][kkk] = matrix1[jjj][kkk + n - yswap];
}
int main()
{
srand(time(0));
const int n = 5;
int **matrix1 = new int *[n];
for (int jjj = 0; jjj < n; jjj++)
matrix1[jjj] = new int[n];
fill_matrix(matrix1, n);
print_matrix(matrix1, n);
int **matrix2 = new int *[n];
for (int jjj = 0; jjj < n; jjj++)
matrix2[jjj] = new int[n];
transform_matrix(matrix1, matrix2, n);
cout << endl;
print_matrix(matrix2, n);
}
2. Дизъюнкция - логическое сложение, логическое ИЛИ, включающее ИЛИ. Строгая дизъюнкция образует сложное высказывание, истинное только в том случае, когда истинен лишь один из его членов.
3. Конъюнкция - логическая операция, по применению максимально приближенная к союзу "и". Конъюнкция истинна только в в одном случае- когда оба исходных высказывания истинны.
8. Импликация - бинарная логическая связка, по своему применению приближенная к союзам "если.. то.."
9. Логическое выражение - устное утверждение или запись, в которое, наряду с постоянными величинами, обязательно входят переменные величины (объекты).
все, что я нашла