2013-08-15 3 views
-2

Рассматривать гальванической плоскости спирали. Исходное положение (0,0). на первом шаге вы переходите к (1.0), на втором шаге (1.1), на шаге 3 вы будете в позиции (0,1), шаг 4 приведет вас к (-1.1) и так далее. На шаге 2012: В какой координате вы приедете? Какая будет кординат в 2121 году?Алгоритм декартовой плоскости спирали?

+1

Просьба представить какой-то код или идеи, которые вы пробовали реализовать. Обычно он смотрел вниз, чтобы использовать SO как «Пожалуйста, сделайте все мое задание для меня». – AndyG

+0

Связанный: [Цикл в спирали] (http://stackoverflow.com/q/398299/335858) – dasblinkenlight

ответ

1

Чтобы найти n-ю координату ((0,0) - 0-й), сначала возьмите c = floor (sqrt (n)). Если c * c == n, координата (c, c). В противном случае, если n-c * c < = 2c, координата (c + c * c-n, c). В противном случае, если n-c * c < = 4c, координата (-c, 3c + c * c-n). В противном случае, если n-c * c < = 6c, координата (n-c * c-5c, -c). В противном случае координата будет (c, n-c * c-7c). Поэтому 2012 год составляет (-29,44), а 2121 - (41,46). Пожалуйста, напишите код самостоятельно, это похоже на домашнюю работу.

+0

спасибо! .... на самом деле мне нужно реализовать алгоритм на C++ –

Смежные вопросы