24. Гниющие апельсины#
| 🎯 Уровень | 🟠 Middle |
| 🔗 Источник | LeetCode 994 — Rotting Oranges |
| 📊 Сложность | Medium |
| 🏷️ Темы | BFS по сетке |
📝 Условие#
Каждую минуту гнилой апельсин заражает соседей. Через сколько минут сгниют все апельсины? Если никогда — -1.
Совет
На LeetCode
mainне нужен: данные приходят аргументами метода классаSolution.
Формат ниже — для запуска у себя черезcin/cout.
📥 Входные данные#
В первой строке два числа m и n (1 ≤ m, n ≤ 10). Далее m строк по n чисел: 0 — пусто, 1 — свежий апельсин, 2 — гнилой.
📤 Выходные данные#
Одно число — через сколько минут сгниют все апельсины, или -1.
🧪 Тесты#
Тест 1#
Ввод:
3 3
2 1 1
1 1 0
0 1 1
Вывод:
4
Тест 2#
Ввод:
3 3
2 1 1
0 1 1
1 0 1
Вывод:
-1
Тест 3#
Ввод:
1 2
0 2
Вывод:
0
Заметка
Оригинальное условие и проверка решения на всех тестах — по ссылке на источник.
💡 Подсказка#
Открыть, если застрял(а) больше чем на 20 минут
BFS сразу из всех гнилых.