[Архив!] Чистая математика, физика, химия и т.п.: задачки для тренировки мозгов, никак не связанные с торговлей - страница 511
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
MaxZ:
Мне изменения понятны. Я только вот это не осилил пока:
"|=" - логическое "ИЛИ"? А вот дальше полный тупик...
"|=" - в данном случае побитовое "или". Эта штука поднимает биты на XX в позициях равных A[i].
И если после цикла все биты с первого по шестой окажутся равными 1, это будет означать что все цифры с 1 по 6 встретились в числе X ровно по одному разу.
0x7E - шестнадцатеричное представление двоичного числа 1111110. (правый бит - нулевой)
А может, ввсе же в С++ ?
.
Validate- функция одного параметра.
Может по старинке... выделяем память и кэшируем bool
для всех допустимых значений аргумента?
В MQL можно открыть ордер, если вдруг чудом хоккейные числа поделятся нацело! :))
А если серьёзно, то Я точно не ровня Вам.
"|=" - в данном случае побитовое "или". Эта штука поднимает биты на XX в позициях равных A[i].
И если после цикла все биты с первого по шестой окажутся равными 1, это будет означать что все цифры с 1 по 6 встретились в числе X ровно по одному разу.
0x7E - шестнадцатеричное представление двоичного числа 1111110. (правый бит - нулевой)1. А может, ввсе же в С++ ?
.
2. Validate- функция одного параметра.
Может по старинке... выделяем память и кэшируем bool
для всех допустимых значений аргумента?
1. Ну язык и среда это кагбе не суть. Суть - сам алгоритм.
2. Эээ.. А подробнее?
Но 125 ms явно не догнать.
Зря ты так. У тебя показывает 47 ms
Жаль решения у задачки нету, результаты сложно сравнивать... :)))
.
Только я всё равно не догнал зачем сравнивать посимвольно
if(A6!=B6 && A5!=B5 && A4!=B4 && A3!=B3 && A2!=B2 && A1!=B1)
?
Вроде бы совпадения в отдельно взятой позиции некритичны?
Зря ты так. У тебя показывает 47 ms
Жаль решения у задачки нету, результаты сложно сравнивать... :)))
.
Только я всё равно не догнал зачем сравнивать посимвольно
if(A6!=B6 && A5!=B5 && A4!=B4 && A3!=B3 && A2!=B2 && A1!=B1)
?
Вроде бы совпадения в отдельно взятой позиции некритичны?
Во те на! :DDD
Я боролся за быстродействие.
Считаю, что условие:
if (A6 != B6 && A5 != B5 && A4 != B4 && A3 != B3 && A2 != B2 && A1 != B1)
выполнится во много раз быстрее следующих строк:
А срабатывает это условие не мало раз. Получается неплохой выигрыш в быстродействии. Хотя может и не такой существенный. Можно убрать и проверить. Но всё же Я на стороне того, что это условие оправдывает себя.
Я боролся за быстродействие:
Считаю, что условие:
if (A6 != B6 && A5 != B5 && A4 != B4 && A3 != B3 && A2 != B2 && A1 != B1)
выполнится во много раз быстрее следующих строк:
А срабатывает это условие не мало раз. Получается неплохой выигрыш в быстродействии. Хотя может и не такой существенный. Можно убрать и проверить. Но всё же Я на стороне того, что это условие оправдывает себя
поправил, сделал так
Те же 47 ms
Так что - нефиг париться с этим условием.
поправил, сделал так
Те же 47 ms
Так что - нефиг париться с этим условием.
Понял ошибку... А Я о быстродействии твержу! :)) Голова совсем не варит. Спать уже пора. Моё местное время 6 утра...
А с кодом надо значит так:
А вот это уже слишком
так как скрипт будет лишний раз меньшее на большее делить...
Блин. Володь И этим надо замораживаться? Ну вот - уволь! Сколько можно!
Твой - Свин. Искренне...
А с кодом надо значит так:
Ага так лучше. 31 ms.
Svinozavr 22.08.2011 01:58
Блин. Володь И этим надо замораживаться? Ну вот - уволь! Сколько можно!
Твой - Свин. Искренне...Каприз художника.... :)
За неделю надоедают меркантильные мотивации. Иногда и оторваться можно из любви к искусству. ;)