7460. Поездка на экскурсию

 

Ученики 10-Б класса на осенние каникулы решили поехать на экскурсию в столицу. Зная количество мальчиков n и девочек m, определить, сколько необходимо заказать комнат в отеле, в котором имеются комнаты на k мест каждая, при условии что мальчиков и девочек поселять вместе запрещено.

 

Вход. В одной строке записаны три числа n, m, k (n, m, k ≤ 100).

 

Выход. Выведите количество комнат, которое необходимо забронировать в отеле.

 

Пример входа

Пример выхода

6 12 3

6

 

 

РЕШЕНИЕ

формула

 

Анализ алгоритма

Для поселения n мальчиков следует заказать  комнат. Для поселения m девочек следует заказать  комнат. Воспользуемся равенством:  = .

Тогда общее количество комнат, которое необходимо забронировать в отеле, равно

 +  = (n + k – 1) / k + (m + k – 1) / k

 

Реализация алгоритма

Читаем входные данные.

 

scanf("%d %d %d",&n,&m,&k);

 

Вычисляем и выводим ответ.

 

res = (n + k - 1) / k + (m + k - 1) / k;

printf("%d\n",res);

 

Реализация алгоритма – обычная

 

#include <stdio.h>

 

int n, m, k, res;

 

int main(void)

{

 

Читаем входные данные.

 

  scanf("%d %d %d", &n, &m, &k);

 

Для мальчиков требуется  комнат.

 

  res = n / k;

  if (n % k > 0) res++;

 

Для девочек требуется  комнат.

 

  res += m / k;

  if (m % k > 0) res++;

 

Выводим ответ.

 

  printf("%d\n", res);

  return 0;

}

 

Java реализация

 

import java.util.*;

 

public class Main

{

  public static void main(String[] args)

  {

    Scanner con = new Scanner(System.in);

    int n = con.nextInt();

    int m = con.nextInt();

    int k = con.nextInt();

    int res = n / k;

    if (n % k > 0) res++;

    res += m / k;

    if (m % k > 0) res++;

    System.out.println(res);

  }

}

 

Python реализация

 

n, m, k = map(int,input().split())

res = (n + k - 1) // k + (m + k - 1) // k;

print(res);