![]() |
|
Модераторы: volvo877, Snowy, MetalFan |
![]()
|
|
| Irisha17 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 3.11.2008 Репутация: нет Всего: нет |
Шахматная доска
Максимальное время работы на одном тесте: 1 секунда Максимальный объем используемой памяти: 64 мегабайта Из шахматной доски по границам клеток выпилили связную (не распадающуюся на части) фигуру без дыр. Требуется определить ее периметр. Формат входных данных Сначала вводится число N (1 ≤ N ≤ 64) – количество выпиленных клеток. В следующих N строках вводятся координаты выпиленных клеток, разделенные пробелом (номер строки и столбца – числа от 1 до 8). Каждая выпиленная клетка указывается один раз. Формат выходных данных Выведите одно число – периметр выпиленной фигуры (сторона клетки равна единице). рисунок |
|||
|
||||
| Freak_FB |
|
|||
![]() Ктулхувед ![]() ![]() Профиль Группа: Участник Сообщений: 296 Регистрация: 13.10.2006 Репутация: нет Всего: 4 |
Предлагаю алгоритм.
|
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: нет Всего: 128 |
Freak_FB, угу. Это оптимальный вариант. Только вот массив надо побольше взять, не 8х8, как раз для учета крайних клеток.
|
|||
|
||||
| Freak_FB |
|
|||
![]() Ктулхувед ![]() ![]() Профиль Группа: Участник Сообщений: 296 Регистрация: 13.10.2006 Репутация: нет Всего: 4 |
Можно конешно и больше. Памяти, благо, немерено. А можно просто исключать из проверки случаи крайних клеток. Типа если - клетка не вырезана, и находится в самом первом столбце, то слева по-любому есть сторона, попадающая по сумме в периметр.
|
|||
|
||||
| Irisha17 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 3.11.2008 Репутация: нет Всего: нет |
Спасибо за совет!
Только есть еще маленькая проблемка.... Я паскаль практически не знаю, мне бы хоть какое-то решение... |
|||
|
||||
| Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: нет Всего: 11 |
Irisha17, это не совет, а решение по сути. Почитай про работу с массивами
http://gimn6.ru/article.asp?id_text=139 |
|||
|
||||
| volvo877 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2073 Регистрация: 15.11.2004 Репутация: 2 Всего: 116 |
Читаешь координаты клеток и ставишь их как единички в матрицу, изначально заполненную нулями, а потом:
|
|||
|
||||
![]()
|
| Правила форума "Delphi" | |
|
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |