![]() |
Модераторы: volvo877, Snowy, MetalFan |
![]() ![]() ![]() |
|
sofware |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 30.11.2006 Репутация: нет Всего: 1 |
Дано радиус круга R(R<=20000).Нужно найти количество целочисульных точек, пренадлежащих этому кругу.
Для 5 будет 81.Для 3 будет 27. Вот мой код, он работает, но очень долго:
|
|||
|
||||
Zero |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2169 Регистрация: 23.10.2004 Где: Россия, г. Рязань Репутация: нет Всего: 24 |
Но как вариант, можно попробывать так:
1. Находишь площадь круга; 2. Находишь, область площади, которая концовку точек делает дробной; 3. вычитаешь результат два из результата один; 4. Делиш результат три, на условную площадь точки. |
|||
|
||||
Dottik |
|
||||
Новичок Профиль Группа: Участник Сообщений: 32 Регистрация: 13.10.2006 Где: Ukraine Репутация: нет Всего: 2 |
1) На полуосях всегда будет лежать R точек. Есть 4 полуоси + точка(0,0). Тоесть на осях лежит (4*R+1) точка. 2) Круг семитричен. Достаточно рассмотреть 1 четверть. Из этого следует, что ответ на задачу имеет вид: 4*S + 4*R + 1 В случае 81 = 4*15 + 4*5 + 1 Ответ, который вы дали для 3 неверен. Правильный ответ: 4*4+4*3+1 = 29 Вот код моей програмы, алгоритм O®
|
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Delphi" | |
|
Запрещается! 1. Обсуждать и делится взломанными компонентами или программным обеспечением 2. Публиковать ссылки на варез 3. Оффтопить
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, THandle, Rrader, volvo877. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Object Pascal: кроссплатформенные технологии | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |