LCME Четверг, 28.03.2024, 18:04
Главная | Регистрация | Вход Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: anatoliy  
Форум » Домашние задания » Программирование » Домашнее задание от 28.01 (Ксероксы и коровы)
Домашнее задание от 28.01
freidomДата: Четверг, 28.01.2010, 21:30 | Сообщение # 1
Главный тут
Группа: Администраторы
Сообщений: 273
Репутация: 20
Статус: Offline
По-моему, мы первый раз получили нетривиальное задание cool

К сожалению, не успеваю доделать mergesort, возможно, займусь им попозже smile

http://ru.wikipedia.org/wiki/Сортировка_с_помощью_двоичного_дерева
http://ru.wikipedia.org/wiki/Пирамидальная_сортировка
http://ru.wikipedia.org/wiki/Сортировка_слиянием
http://ru.wikipedia.org/wiki/Алгоритм_сортировки
http://ru.wikipedia.org/wiki/Быстрая_сортировка

Если бы всё было так просто smile
Егор, ты неправильно понимаешь условие задачи. Давай я просто ещё раз его объясню.
Дано:
n - количество коров
c1..cm - список координат колышков, причём 0 <= ci <= 10000, и, кроме того, набор строго монотонно возрастает
Нужно найти такое расположение коров, при котором минимальное расстояние между двумя соседними коровами d будет наибольшим.
То есть на выходе должен быть массив или список, но никак не булевское значение.
P.S.: можно ещё возвращать это самое d, тогда задача тоже будет считаться выполненной.

Саня, обоснуй smile

Прикрепления: xerox.ml (0.2 Kb) · cows.ml (0.8 Kb) · cowstest.ml (2.6 Kb) · mergesort.ml (1.4 Kb)
 
froci9rgevkaДата: Суббота, 30.01.2010, 23:38 | Сообщение # 2
Лейтенант
Группа: Проверенные
Сообщений: 71
Репутация: 1
Статус: Offline
с коровами сделал без двоичного поиска... работает меньше половины секунды перебирая до 200000 пеньков...<_<
на самом деле я не думаю что с двоичным поиском будет намного быстрее, скорее будет просто сложнее код... nocomp а при надолбовании этого кода у вас будет больше 50 строк 100%!!! я пытался делать как сказал дядя дима но потом зарылся в ошибках sweated так что лучше использовать обычный умный-тупой перебор wink

Добавлено (29.01.2010, 23:22)
---------------------------------------------
вот сделал чисто математическое pray hippy , УЛЬТРОбыстрое решение для сканера-принтера... wink
Эта задача самая весёлая из всех которые задавались в этом году crazy
не думаю что можно решить это заданее ещё лучше. cool

даааа... это того стоило я пошёл спать sleep

Добавлено (30.01.2010, 00:31)
---------------------------------------------
Сон отменяется sad fool
вы видите здесь БАГ? А ОН ЕСТЬ, так считает компилятор... angry bash
я ни как не могу найти место на котором оно зацикливается!!!((( sweated
open List;;
let rec creat_list n =
if n=0 then [] else (Random.int 1)::(creat_list (n-1));;
(* spisok *)let a = creat_list 2;;
(* kol-vo korov *)let c = 2;;

let rec summa l =
match l with
l1::ls->l1+(summa ls)
|[]->0;;

let rec korova spisok n z =
let rec korova2 spisok m n z =
if n=0 then true else
(match spisok with
l1::ls->let s = (l1+m) in if s>=z then korova2 ls 0 (n-1) z
else korova2 ls s n z
|[]-> false) in
korova2 spisok 0 n z;;

let rec element n =
if n mod 2 = 0 then n/2 else (n-1)/2;;

let rec poisk spisok kor n m z =
if m-n=1 then z else (
let s = (element (n+m)) in if korova spisok kor s
then poisk spisok kor s m s else poisk spisok kor n s z);;

poisk a c 0 (summa a) 1;;

Добавлено (30.01.2010, 23:38)
---------------------------------------------
ну вот, ппц cool , оказалось что ошибка элементарная: Random.int 1 я то думал это будет список из единиц.... happy
в общем я исправил и всё заработало smile

Прикрепления: korova-.ml (0.8 Kb) · printer.ml (0.8 Kb) · korova.ml (0.8 Kb)


Саня - тащщи! XD

"If you have time to panic, you have time to be doing something productive" © Josh Whipple

You’re standing on your Bridle. Idiot! =)
© Roland “Slim” Simpson

Сообщение отредактировал froci9rgevka - Суббота, 30.01.2010, 23:48
 
iom96Дата: Воскресенье, 31.01.2010, 11:33 | Сообщение # 3
Рядовой
Группа: Проверенные
Сообщений: 15
Репутация: 1
Статус: Offline
я ксероксы писал немного по другому, кстати, Никулин, у тебя в ксероксах ошибка >D

Nobody is perfect. I'm nobody. So I'm perfect
 
Форум » Домашние задания » Программирование » Домашнее задание от 28.01 (Ксероксы и коровы)
  • Страница 1 из 1
  • 1
Поиск:

Copyright Freidom © 2024 Хостинг от uCoz