Re[9]: Помогите, пожалуйста !
От: Erick_B  
Дата: 11.02.06 20:58
Оценка:
Здравствуйте, www, Вы писали:

www>вам иннтересно как найти с какой стороны лежит точка (i.e. в какую сторону двигаться байнари серчем?)

www>если да, то мне кажется *самый простой* способ будет векрторное произведение.
www>строите векторное произведение 2 векторов: от начальной точки до искомой и от начальной до текущей (которую получили бинарным поиском). Далее вектор (0, 0, x1*y2-y1*x2) есть их векторное произведение (детерминант трехмерной матрицы|(e1,e2,e3)(x1,y1,0)(x2,y2,0)|. Далее правило правой руки, если он направлен вверх, то вам нужно двигаться в одну сторону, вниз — в другую.

www>Школьная математика тоже подойдет, если вы не помните векторное произведение.


Да, это оптимальное решение.
Проблемма не в векторном произведении и не в школьной математике. Я уверен что решил бы эту задачу имея достаточно времени, но за 15 минут — однозначно нет. Может быть для тех, кто занимается, скажем, программированием игр, или другими вещами связанными с геометрией это очевидно, но у меня голова была забита другим на тот момент. И насколько я знаю именно на этой задачке все засыпались в тот день, когда я проходил собеседовние.
Вот мне просто интересно, понять кание критерии отбора были у Майкрософта, если люди решили сложную задачу и их взяли, не решили — не взяли — это понятно. Если же не решили и их взяли — значит были какие-то другие аргументы "за".
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.