Есть ответ 👍

С утра шел дождь, и ничего не предвещало беды. Но к обеду выглянуло солнце, и в детский лагерь заглянула СЭС. Пройдя по всем домикам и корпусам, СЭС вынесла следующий вердикт: бельевые веревки в жилых домиках не удовлетворяют нормам СЭС. Как выяснилось, в каждом домике должно быть ровно по одной бельевой веревке, и все веревки должны иметь одинаковую длину. В лагере имеются N бельевых веревок и K домиков. Чтобы лагерь не закрыли, требуется так нарезать данные веревки, чтобы среди получившихся веревочек было K одинаковой длины. Формат входных данных
В первой строке заданы два числа — N и K (1≤N,K≤104+1). Далее в каждой из последующих N строк записано по одному числу — длине очередной бельевой веревки. Длина веревки задана в сантиметрах. Все длины лежат в интервале от 1 сантиметра до 100 километров включительно.

Формат выходных данных
В выходной файл выведите одно целое число — максимальную длину веревочек, удовлетворяющую условию, в сантиметрах. В случае, если лагерь закроют, выведите 0.

входные данные
4 11
802
743
457
539

выходные данные
200

233
500
Посмотреть ответы 2

Ответы на вопрос:

ksubol777
4,5(73 оценок)

вроде должно работать

Объяснение:

#include<iostream>

#include<vector>

#include<algorithm>

using namespace std;

int main() {

long long k, n;

cin >> n >> k;

vector<int> v;

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

 int a;

 cin >> a;

 v.push_back(a);

}

int l = 1, r = 200, m;

while (l < r - 1) {

 long long sum = 0;

 m = (r + l) / 2;

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

  sum += v[i] / m;

 }

 if (sum < k) {

  r = m;

 }

 else {

  l = m;

 }

}

int sumL = 0, sumR = 0;

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

 sumL += v[i] / l;

 sumR += v[i] / r;

}

if (sumR == k) {

 cout << r;

 return 0;

}

else if (sumL==k){

 cout << l;

 return 0;

}

cout << 0;

return 0;

}


В1 + В2 = 5

(В1 + В2 + В3) / 3 = 5

(5 + В3) / 3 = 5

5 + В3 = 15

В3 = 15 – 5 = 10

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS