Умные вопросы
Войти
Регистрация
Была задача: Есть 100 бит информации в ряд. Изначально все они равны "1".
Программа пробегает по всем битам и меняет значение каждого второго на противоположный. Потом еще раз - но на этот раз каждый 3-й. Потом каждый 4-й, так дале. На последнем 99 пробеге она меняет лишь последний 100-й бит. Сколько бит после этогот имеют значение "1".
И были вопросы:
Как решать не перебирая все проходы?
Есть ли общая формула для любого числа бит?
Ни где не нашел ответа в виде полной формулы! Может быть кто-кто решил или решит?
12 года
назад
от
Ира Шемчук
3 Ответы
▲
▼
0
голосов
Там в комментариях вроде была формула - целая часть из sqr (n) . или споры по ней. Я её не проверял.
Но я полагаю, что если решение строится на переборе простых множителей. то общей формулы быть не может, поскольку нет общей формулы для простых чисел.
12 года
назад
от
Anton Maksimov
▲
▼
0
голосов
n-ый бит будет изменён k раз,
где k - число делителей у n.
То есть,
если число делителей у n - чётно,
то n-ый бит останется равным 1.
Иначе станет нулём.
12 года
назад
от
МАКСИМ ОВОД
▲
▼
0
голосов
Единицами останутся только полные квадраты, значит, целая часть корня из длины строки.
12 года
назад
от
Анастасия Кузнецова
Связанные вопросы
1
ответ
С чего начать изучение астрономии и астрофизики?
8 месяцев
назад
от
sidneypl60
1
ответ
Изнашивается ли стекло на маске сварщика? Почему-то оно идет в категории "расходный материал".
8 года
назад
от
рене декарт
1
ответ
Как натянуть колесо на толстую ось?
1 год
назад
от
Николай Олейник