|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.02.2011, 18:16 | #61 |
Форумчанин
Регистрация: 04.08.2010
Сообщений: 110
|
написал код, но в промежутках [20..99] [200..999] он не работает правильно. Ищу ошибку. Для 10^9 считает 0.104 секунды. Ответ 612579512
|
02.02.2011, 18:21 | #62 |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
Код:
|
02.02.2011, 18:31 | #63 |
Форумчанин
Регистрация: 04.08.2010
Сообщений: 110
|
|
02.02.2011, 18:33 | #64 | |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
Цитата:
|
|
02.02.2011, 18:41 | #65 | ||
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Цитата:
диапазон от 0-9 = содер 1 единичку. Далее: 0 - 9 = 1 10 - 19 = 11 20 - 99 = 8 100 - 109 = 11 110 - 119 = 21 т.е. 10 единиц старшего разряда + 11 единиц двух младших 120 - 129 = 11 130 - 139 = 11 140 - 149 = 11 150 - 159 = 11 160 - 169 = 11 170 - 179 = 11 180 - 189 = 11 190 - 199 = 11 200 - 219 = 12 220 - 299 = 8 300 - 399 = 20 400 - 499 = 20 500 - 599 = 20 600 - 699 = 20 700 - 799 = 20 800 - 899 = 20 900 - 999 = 20 Теперь просуммируем все полученные результаты: 1+11+8+11+21+8*11+12+8+20*7 = 300 Это и есть число входящих в этот диапазон единичек. А вот этот расклад не верен. Цитата:
А дальше идёт накопление этой ошибки, так в диапазон от 0 до 100000000 мой алгоритм показывает 80000000, а этот 5217032.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder Последний раз редактировалось Smitt&Wesson; 02.02.2011 в 18:48. |
||
02.02.2011, 19:14 | #66 | |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
Цитата:
я еще раз вам повторяю, мы считаем не общее кол-во единиц в числах от 1 до n, а кол-во чисел содержащих единицы. Ваш ответ всё равно не верен, от 1 до 1000 ровно 301 единица Последний раз редактировалось NiCola999; 02.02.2011 в 19:19. |
|
02.02.2011, 19:19 | #67 |
Линуксоид
Участник клуба
Регистрация: 31.07.2009
Сообщений: 1,403
|
Народ, всё просто! Все числа больше или равны единицы содержат единицу в своей двоичной записи. То есть ответ — N. :D
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su |
02.02.2011, 19:20 | #68 |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
это шутка? =) в двоичной системе согласен =)
|
02.02.2011, 20:00 | #69 |
Форумчанин
Регистрация: 10.01.2011
Сообщений: 243
|
Код:
как время работы высчитать? Последний раз редактировалось Акоб; 02.02.2011 в 20:29. |
02.02.2011, 20:15 | #70 |
Не
Участник клуба
Регистрация: 29.10.2009
Сообщений: 1,456
|
на 10^9 выдает неверный ответ:
612579513 правильный 612579512 |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
подсчитать количество слов, в которые входит символ "е" | Zhasik | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 27.12.2010 10:29 |
Подсчитать количество букв "А" в предложении и общее количество букв.В тексте из файла несколько строк. | kvas91 | Общие вопросы C/C++ | 3 | 14.11.2010 16:51 |
Как обойти "преобразование типа из "string" в "float" невозможно" | lexluter1988 | Помощь студентам | 1 | 07.08.2010 12:23 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |