Предмет: Информатика,
автор: Аноним
РЕШИТЕ ПЛИЗ ЗАДАЧУ ЯЗЫК С++ ДАЮ 30 БАЛЛОВ!!!!!
В обувном магазине продается обувь разного размера. Известно, что одну пару обуви можно надеть на другую, если она хотя бы на три размера больше. В магазин пришел покупатель. Требуется определить, какое наибольшее количество пар обуви сможет предложить ему продавец так, чтобы он смог надеть их все одновременно.
Формат входных данных
Сначала вводится размер ноги покупателя (обувь меньшего размера он надеть не сможет), затем количество пар обуви в магазине и размер каждой пары. Размер — натуральное число, не превосходящее 100, количество пар обуви в магазине — целое неотрицательное число, не превосходящее 1000.
Формат выходных данных
Выведите единственное число — максимальное количество пар обуви.
входные данные
60
2
60 63
выходные данные
2
Ответы
Автор ответа:
4
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
int s, n;
cin >> s >> n;
vector <int> a(n);
for(int i = 0; i < n; i++)
cin >> a[i];
sort(a.begin(), a.end());
int prev_s = 0, count = 0;
for(int i = 0; i < n; i++)
if(a[i] >= s)
{
prev_s = a[i];
count++;
for(int j = i; j < n; j++)
if(a[j] - prev_s >= 3)
{
count++;
prev_s = a[j];
}
break;
}
cout << count;
return 0;
}
Похожие вопросы
Предмет: Русский язык,
автор: ulyamaltseva1
Предмет: Русский язык,
автор: Мария1Макарова
Предмет: Русский язык,
автор: дашулька64
Предмет: Математика,
автор: vovka50
Предмет: Математика,
автор: Чиби300