9890. Мячи и коробки

 

Найдите количество способов разместить n различных шаров в k коробок. Каждая коробка может содержать произвольное количество шаров, включая ноль.

 

Вход. Два натуральных числа n и k.

 

Выход. Выведите количество способов разместить n различных шаров в k коробок. Гарантируется, что это число не превышает 1018.

 

Пример входа

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

2 2

4

 

 

РЕШЕНИЕ

комбинаторика

 

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

Рассмотрим первый шар. Его можно поместить в одну из k доступных коробок. Таким образом, для размещения первого шара существует k вариантов. Аналогично, каждый следующий шар можно положить в одну из k коробок (для каждого шара также имеется k вариантов).

Следовательно, общее количество способов разместить все шары по коробкам равно произведению k * k * … * k = kn.

 

Пример

Пусть у нас есть два шара с номерами 1 и 2, а также две коробки с номерами 1 и 2. В этом случае шары можно распределить по коробкам следующими четырьмя способами:

 

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

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

 

scanf("%lld %lld", &n, &k);

 

Вычисляем res = kn.

 

res = 1;

for (i = 1; i <= n; i++)

  res = res * k;

 

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

 

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