Список вопросов
Как зайти в Даркнет?!
25th January, 01:11
4
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
891
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
946
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
936
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1723
0
период по дням
25th October, 10:44
3954
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4379
0
Помогите пожалуйста решить задачи
24th November, 23:53
6084
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4394
0
Метода Крамера С++
23rd October, 11:55
4308
0
помогите решить задачу на C++
22nd October, 17:31
4001
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2597
0
Решение задачи Сжатие песен с Codeforces
Без пояснения   Просмотров: 1620
У Ивана на телефоне есть n песен. Размер i-й песни ai байт. У Ивана также есть флеш-карта, которая может хранить не более m байт информации. Изначально его флеш-карта пустая.
Иван хочет записать все n песен на свою флеш-карту. Он может сжимать некоторые из них. Если он сжимает i-ю песню, размер i-й песни уменьшается с ai до bi байт (bi
Иван может сжать любое подмножество песен (возможно, пустое) и записать все песни на флеш-карту, если сумма их размеров не превышает m. Он может сжимать любое подмножество песен (не обязательно подряд идущих).
Иван хочет найти минимальное количество песен, которое необходимо сжать, чтобы все песни поместились на флеш-карте (то есть сумма их размеров была меньше либо равна m).
Если невозможно записать все песни (даже если Иван сожмет все песни, которые у него есть), выведите «-1». Иначе выведите минимальное количество песен, которое Ивану необходимо сжать.
Иван хочет записать все n песен на свою флеш-карту. Он может сжимать некоторые из них. Если он сжимает i-ю песню, размер i-й песни уменьшается с ai до bi байт (bi
Иван может сжать любое подмножество песен (возможно, пустое) и записать все песни на флеш-карту, если сумма их размеров не превышает m. Он может сжимать любое подмножество песен (не обязательно подряд идущих).
Иван хочет найти минимальное количество песен, которое необходимо сжать, чтобы все песни поместились на флеш-карте (то есть сумма их размеров была меньше либо равна m).
Если невозможно записать все песни (даже если Иван сожмет все песни, которые у него есть), выведите «-1». Иначе выведите минимальное количество песен, которое Ивану необходимо сжать.
Код
//song compression #include using namespace std; int main() { int long long n, m, i = 0, sum = 0, count = 0; cin >> n >> m; vector v(n); while(n--) { int long long a,b; cin >> a >> b; sum += a; v[i++] = a - b; } sort(v.begin(),v.end()); i--; while(i >= 0 && sum > m){ sum -= v[i--]; count++; } if(sum <= m) cout << count << endl; else cout << -1 << endl; return 0; }
 
 
 
 
 
Автор: Администратор
Автор: Администратор
Код
#include using namespace std; int main() { #ifdef _DEBUG freopen("input.txt", "r", stdin); // freopen("output.txt", "w", stdout); #endif int n, m; cin >> n >> m; vector > a(n); long long sum = 0; for (int i = 0; i < n; ++i) { cin >> a[i].first >> a[i].second; sum += a[i].first; } sort(a.begin(), a.end(), [&](pair a, pair b) { return a.first - a.second > b.first - b.second; }); for (int i = 0; i < n; ++i) { if (sum <= m) { cout << i << endl; return 0; } sum -= a[i].first - a[i].second; } if (sum <= m) cout << n << endl; else cout << -1 << endl; return 0; }
 
 
 
 
 
Автор: Администратор
Автор: Администратор
Комментарии
info@mycod.net  
Карта сайта  
Правообладателям
Заявка на расчет
×
или напишите нам прямо сейчас: