Розповсюдження вірусу
Limits: 2 sec., 256 MiB
Місто Тускавець має вигляд квадратної області розміру \(n \times n\), де кожна клітинка — це будинок.
Зеник знає, що в його місті спочатку є рівно \(k\) будинків, у яких хворіють люди. Також він знає, що в певному будинку можуть захворіти тільки тоді, коли в цього будинку є хоча б два сусідніх будинки, у яких хворіють. Будинки вважаються сусідніми, якщо мають спільну сторону. Зауважте, що новозаражені будинки також зможуть заражати інші будинки.
На жаль, Зеник не володіє повною інформацією про всіх хворих, тому не знає, які саме будинки заражені, але йому цікаво, наскільки багато може бути будинків з хворими наприкінці.
Допоможіть Зенику та знайдіть максимальну кількість будинків із хворими.
Input
У єдиному рядку задано два цілі числа \(n\) та \(k\) — розмір квадрата й кількість заражених клітинок на початку відповідно.
Output
В одному рядку виведіть ціле число — максимальну кількість будинків, у яких є хворі.
Constraints
\(1 \le n \le 10^3\),
\(1 \le k \le n^2\),
для 40% тестів виконується додаткове обмеження \(n \le k\).
Samples
Input (stdin) | Output (stdout) |
---|---|
3 3 | 9 |
Notes
У прикладі відповідь — 9. На рисунку справа зображено 3 початково заражені будинки (клітинки червоного кольору). Далі поступово захворіють усі інші будинки в наступному порядку по кольорах: оранжевий, жовтий, зелений. Отже, усі будинки можуть бути зараженими, тому відповідь — 9.
Зауважте, що відповідь не може бути більшою за кількість будинків у місті.
Submit a solution
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|
Element Type | Created | Who | Problem | Compiler | Result | Time (sec.) | Memory (MiB) | # | Actions |
---|