2 задания напишите на каком языке программировали: 1.B. Укладка плитки
Ограничение времени 1 секунда
Ограничение памяти 64.0 Мб
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Мэр нашего города хочет уложить максимум плит размером 2 × 1 клеток без деления их пополам на площади размером K × N клеток. Требуется уложить максимум плит при условии, что:
Можно поворачивать плиты
Плиты не пересекаются
Все плиты лежат внутри площади, касание краёв допускается.
Найдите максимум плит, которые можно уложить при данных условиях.
Формат ввода
В единственной строке записано два целых числа K и N — размеры площади в клетках (1 ≤ K ≤ N ≤ 16)
Формат вывода
Выведите одно число — максимальное количество плит, которые можно уложить
Пример 1
Ввод Вывод
2 4
4
Пример 2
Ввод Вывод
3 3
4
2. задача вторая
Ограничение времени 1 секунда
Ограничение памяти 64.0 Мб
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
В Чувашской республике проходит командная олимпиада по программированию. Трое друзей - Вася, Валя и Володя решили поучаствовать в ней в составе одной команды. Они договорились, что будут делать только те задачи, в которых уверены хотя бы двое из них.
На олимпиаде было
n
n задач. Для каждой из задачи известна уверенность каждого из друзей в решении. Найдите количество задач, которые будут решать ребята.
Формат ввода
В первой строк записано целое число
n
(
1
≤
n
≤
1000
)
n(1≤n≤1000) - количество задач на олимпиаде.
В следующих
n
n строках написано по три числа, каждое из которых равно 0 или 1. Если
i
i-e число в строке равно 1, то
i
i-ый друг уверен в её решении, иначе не уверен. Числа разделены пробелами.
Формат вывода
Выведите целое число — количество задач, которые друзья будут решать на олимпиаде.
Пример 1
Ввод Вывод
3
1 1 1
1 0 0
1 0 1
2
Пример 2
Ввод Вывод
2
0 1 1
0 0 1
1
Примечания
В первом примере трое человек уверены в решении первой задачи, в третьей только двое, а во второй только один из друзей.
Во втором примере друзья уверены только во первой задаче.
#include "stdafx.h"
#include <iostream>
#include <string>
#include <fstream>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
float A[10];
cout << "Заполните массив данными:" << endl;
for (int i = 0; i < 10; i++)
{
cout << "[" << i + 1 << "]: ";
cin >> A[i];
}
float max = A[0];
for (int i = 0; i < 10; i++)
{
if (A[i] > max)
{
max = A[i];
}
}
cout << "\nМаксимальное значение: " << max << endl;
float summ = 0;
for (int i = 0; i < 10; i++)
{
if ((A[i] + 1) == max)
{
summ += A[i];
}
}
cout << "\nСумма элементов массива отличающихся от максимального на единицу: " << summ << endl;
return 0;
}
Объяснение:
Ищем максимальное число в массиве и далее ищем сумму всех элементов массива, которые отличаются от максимального на единицу. Т.е ищем сумму элементов, которые меньше максимального на единицу
#include "stdafx.h"
#include <iostream>
#include <string>
#include <fstream>
#include <windows.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
float A[10];
cout << "Заполните массив данными:" << endl;
for (int i = 0; i < 10; i++)
{
cout << "[" << i + 1 << "]: ";
cin >> A[i];
}
float max = A[0];
int index = 0;
for (int i = 0; i < 10; i++)
{
if (A[i] > max)
{
max = A[i];
index = i;
}
}
cout << "\nМаксимальное значение: " << max << endl;
float proizv = 1;
for (int i = index+1; i < 10; i++)
{
proizv = proizv * A[i];
}
cout << "\nПроизведение элементов массива расположенных после максимального: " << proizv << endl;
return 0;
}
Написано в visual studio.