Аналіз алгоритму
Максимальна кількість зайців, яка гарантовано опиниться в одній клітці, дорівнює [(m + n - 1) / n]. Це вираз можна обчислити так: [(m + n - 1) / n] = (m + n - 1) / n. Вказаний вираз на мові С також можна записати у вигляді: [(m + n - 1) / n] = m / n + \text{bool}(m \% n); Результатом операції перетворення типів bool(x) є:
0 (неправда), якщо x = 0;
1 (правда), якщо x ≠ 0;
Реалізація алгоритму
Читаємо вхідні дані. Обчислюємо та виводимо відповідь.
scanf("%d %d",&n,&m);
res = (m + n - 1) / n;
printf("%d\n",res);Реалізація алгоритму – умовний оператор
#include <stdio.h>
int n, m, res;
int main(void)
{
scanf("%d %d", &n, &m);
res = m / n;
if (m % n > 0) res++;
printf("%d\n", res);
return 0;
}Реалізація алгоритму – bool
#include <stdio.h>
int n, m, res;
int main(void)
{
scanf("%d %d", &n, &m);
res = m / n + bool(m % n);
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(), m = con.nextInt();
int res = (m + n - 1) / n;
System.out.println(res);
}
}Python реалізація
n, m = map(int,input().split())
res = (m + n - 1) // n
print(res)