MAXimal
home
algo
bookz
forum
about
��� ����
Page source on a
TeX
-like language:
\h1{ ��� ���� } \h2{ ����������� } ����� ���� ���������� ����� ������� ����������� ��������������� �����, ����� ���� ���� �������� ����� ���������� ����� � ����� ����. ��������, ��� ����� ����� 3 ���� ����� ����� ������������������ ����� ����: $000$, $001$, $011$, $010$, $110$, $111$, $101$, $100$. ��������, $G(4)=6$. ���� ��� ��� ��������� ������� ����� (Frank Gray) � 1953 ����. \h2{ ���������� ���� ���� } ���������� ���� ����� $n$ � ���� ����� $G(n)$. �������, ��� $i$-�� ��� $G(n)$ ����� ������� ������ � ��� ������, ����� $i$-�� ��� $n$ ����� �������, � $i+1$-�� ��� ����� ����, ��� �������� ($i$-�� ��� ����� ����, � $i+1$-�� ����� �������). ����� �������, �����: $G(n) = n \oplus (n>>1)$: \code int g (int n) { return n ^ (n >> 1); } \endcode \h2{ ���������� ��������� ���� ���� } ��������� �� ���� ���� $g$ ������������ �������� ����� $n$. ����� ���� �� ������� ����� � ������� (����� ����� ������� ��� ����� ����� 1, � ����� ������� --- $k$). �������� ����� ����������� ����� ������ $n_i$ ����� $n$ � ������ $g_i$ ����� $g$: $$ n_k = g_k, $$ $$ n_{k-1} = g_{k-1} \oplus n_k = g_k \oplus g_{k-1}, $$ $$ n_{k-2} = g_{k-2} \oplus n_{k-1} = g_k \oplus g_{k-1} \oplus g_{k-2}, $$ $$ n_{k-3} = g_{k-3} \oplus n_{k-2} = g_k \oplus g_{k-1} \oplus g_{k-2} \oplus g_{k-3}, $$ $$ \ldots $$ � ���� ������������ ���� ��� ����� ����� �������� ���: \code int rev_g (int g) { int n = 0; for (; g; g>>=1) n ^= g; return n; } \endcode \h2{ ���������� } ���� ���� ����� ��������� ���������� � ��������� ��������, ������ ���������� �����������: \ul{ \li $n$-������ ��� ���� ������������� ������������ ����� �� $n$-������� ����. \li � �������, ���� ���� ������������ ��� \bf{����������� ������} ��� �������������� ���������� �������� � �������� (��������, � ��������). � ���������, ���� ���� � ���� ������� � ����� � ���� �����������. \li ���� ���� ����������� � ������� ������ � \bf{��������� ������}. ����� $n$ --- ���������� ������. ������ � ���� ���� ����� $n$, ���������� �� ����� ����� (�.�. $G(0)$), � ����� ��������� �� ����� ���� (�� $G(i)$ ���������� � $G(i+1)$). �������� � ������������ ������� $i$-��� ���� �������� ���� ���� $i$-�� ���� (������ ������ �������� ���� ������������� ���������� �� ������� ����, � ������ �������� ���� --- ����������). ��������� �� ������ ���� ���������� ����� ���� ���, �� �� ����� �������� ��������� ���� $i$ ��� ����������� $i$-�� �����. �������, ��� ��� ���� ������, ����� �����������, �� ������ ���� ������� ����� ���� ������� ���� (�� ����������� ��������� � ��������� �������). ��� ����������� ����� ������ ������� ��� �������� ����, ������ ������� ��������� ������ ����, ������ ���������� � ������: ���� $n$ �������, �� ������������������ ����������� ����������� ����� ����� ��� $f \rightarrow t \rightarrow r \rightarrow f \rightarrow t \rightarrow r \rightarrow \ldots$ (��� $f$ --- ��������� ��������, $t$ --- ��������� ��������, $r$ --- ���������� ��������), � ���� $n$ �����, �� $f \rightarrow r \rightarrow t \rightarrow f \rightarrow r \rightarrow t \rightarrow \ldots$. \li ���� ���� ����� ������� ���������� � ������ \bf{������������ ����������}. } \h2{ ������ � online judges } ������ �����, ������� ����� �����, ��������� ���� ����: \ul{ \li \href=http://acm.sgu.ru/problem.php?contest=0&problem=249{SGU #249 \bf{"Matrix"} ~~~~ [���������: �������]} }