Feb. 9th, 2008

juan_gandhi: (Default)
Вспомнил тут задачу, запощенную недавно [livejournal.com profile] avva: на целых 32-битных числах найти функцию чтобы f(f(x)) == -x.

Ну если ты типа изучал что-то вроде алгебры и в курсе что за орбиты такие бывают, то понятно, что на ZBase где Base=2N это решение возможно только при N=2, а на Z оно очевидно.

Интересно другое - только двое признали невозможность решения для конечного числа бит; остальные не брали в голову такие мелочи или признавали "исключительные случаи".

Такие дела; и что делать? Ведь приходится каждый день с таким оппортунизмом сталкиваться; и ни хрена не объяснишь и не докажешь. Или надо таки пробовать?

Ну вот к примеру эта задача.

0 и число, у которого в старшем бите единица а остальные нули (назовём его M), отрицанием переходят сами в себя. На остальных 2^n-2 числах отрицание переводит число в другое число, не равное исходному.

Теперь, если мы изобретём такую функцию f, то посмотрим на орбиты: множества вида (x, f(x), и т.д.). Весь набор чисел разбивается на непересекающиеся орбиты. У нуля и у того длина орбиты максимум 2; у остальных длина орбиты 4. Может ли f(0) быть чем-то отличным от 0 и М? Нет, потому что тогда оно попадёт в чужую орбиту. Поэтому у нас два варианта для f(0): или M, или 0. Собственно, пофиг.

Остальные же числа состоят из непересекающихся орбит длины 4. А всего этих остальных чисел 2^n-2. Что делится нацело на 4 только при n=0.

Ну это так, пример был, иллюстрация к общей проблеме компенсации недостатка образования умением быстро писать код.

дыбр

Feb. 9th, 2008 09:55 pm
juan_gandhi: (Default)
Проснувшись утром, первым делом сделал зарядку и попрограммировал на ML. Непонятно куда девалась Int.toString, но пофиг; написать itoa - ещё одно упражнение. Потом позавтракали, посмотрели Law and Order, и в библиотеку. Нет, ещё перед библиотекой покрасил вторым слоем то что вчера красил. Всё, со стенами покончено.
Read more... )

Ну и когда я буду развлекаться с МЛ и Хадупом? И когда буду писать то что я собирался писать? Когда вообще всё это прекратится? Когда я буду на велосипеде кататься? Когда я буду валяться в гамаке?

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

May 2025

S M T W T F S
    1 2 3
456 7 8 9 10
11 121314151617
181920 21 222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 24th, 2025 09:34 am
Powered by Dreamwidth Studios