Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.10.2009, 10:43   #1
Anuto4ka
 
Регистрация: 15.10.2009
Сообщений: 7
Смущение Задача про Петю

Пете предложили бесплатно отдохнуть на острове в обмен на небольшую услугу. Правительство острова решило построить сеть дорого таким образом,чтобы любые 2 города связывала дорога,постороенная по прямой линии. При этом 1 дорога может связывать несколько городов,если они расположены на одной прямой.Для расчёта бюджета проекта необходимо определить суммарную длину дорог,которые будут построены. Напишите для Пети требуемую программу.
ВХОДНЫЕ ДАННЫЕ находятся в файле input.txt:в первой строке содержится количество городов
N(1<=N<=300).Далее следует N-строк,каждая из них содержит два целых числа Хі и Уі(0<=Xi,Yi<=10000),разделённых пробелом,-координаты І-го города.
ВЫХОДНЫЕ ДАННЫЕ: ваша программа должна записать в файл output.txt единственное число-суммарную длинну дорог,округлённую до целого числа.
ПРИМЕР ВХОДНЫХ И ВЫХОДНЫХ ДАННЫХ
input.txt
4
0 0
0 100
100 0
50 50
output.txt
412

Последний раз редактировалось Rembo; 27.10.2009 в 15:55.
Anuto4ka вне форума Ответить с цитированием
Старый 26.10.2009, 11:34   #2
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

ну, сначала заносим данные из файла в массив, это несложно.
и еще создаем двухмерный массив, чтобы записывать все города, лежащие на прямой.
далее проходимся по массиву городов.
1ый город:
вычисляем прямую, проходящую через 1ый и 2ой; проверяем все остальные города. если еще какие-то города лежат на этой прямой, то во второй массив записываем все эти города (включая 1 и 2). расчитываем расстояние между крайними городами прямой (естественно, эти крайние города перед этим нужно вычислить) и прибавляем к результату.
вычисляем прямую, проходящую через 1ый и 3ой, ...
смысл второго массива: когда мы рассмитриваем Nый город, мы пробегаемся по этому массиву, и если находим его в какой-то строке, то мы уже не рассматриваем дорогу между этим городом и теми, которые указаны в этой строке массива.

может, немного непонятно, заранее извиняюсь)
написал бы примерный код, но ухожу сейчас
Форматируйте код, будьте людьми.
Granus вне форума Ответить с цитированием
Старый 26.10.2009, 21:19   #3
Anuto4ka
 
Регистрация: 15.10.2009
Сообщений: 7
Радость аааааа,караул

ааааааааа,совсем запуталась,а с кодом не можешь помочь?
Anuto4ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите ПЛЗ!!!!!! Хрустик Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 0 15.10.2009 12:08
Помогите пожалуйсто изменить этот рисунок CyberWolf Свободное общение 1 28.03.2008 17:48