Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.72/29: Рейтинг темы: голосов - 29, средняя оценка - 4.72
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105

Определить, какая цифра стоит на заданном месте в последовательности

09.12.2011, 23:18. Показов 5625. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
всем вечер добрый.
интересует алгоритм решения к двум задачам. честно говоря, довольно долго думал, но ничего дельного я не придумал.

первая, это когда все числа начинают выписывать в ряд (123456789101112123.. и т.д.) и нужно узнать, какая цифра стоит на i - том месте.
и вторая, это когда окружность, для простоты пирог круглой формы, начинают разрезать по диаметру, и нужно узнать, сколько максимально можно получить кусков за n разрезов.

спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.12.2011, 23:18
Ответы с готовыми решениями:

Вывести, какая цифра стоит на месте с номером X в указанной последовательности
Выпишем все двузначные числа в одну последовательность -- 101112131415161718192021...9899. Вводится число X (1<=X<=180). Вывести,...

Для заданного N, определить, какая цифра стоит на N-ом месте в этой последовательности
Выпишем подряд все натуральные числа: 1234567891011121314… Для заданного N, определить, какая цифра стоит на N-ом месте в этой...

Определить, на каком месте в десятичном числе стоит заданная цифра
Дано натуральное число. Определить, на каком месте в числе стоит заданная цифра или сообщить, что заданной цифры в числе нет

16
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
09.12.2011, 23:28
судя по длине числа испльзуется массив, предположу что можно использовать memcpy для
Цитата Сообщение от neske Посмотреть сообщение
какая цифра стоит на i - том месте.
надо подробней.
Цитата Сообщение от neske Посмотреть сообщение
сколько максимально можно получить кусков за n разрезов.
2n
1
50 / 50 / 12
Регистрация: 22.05.2011
Сообщений: 326
09.12.2011, 23:29
Насчет второй, точно по диаметру?

Не по теме:

Читал похожую задачу. Там можно любым образом провести n прямых, в этом и уловка задачи

1
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
09.12.2011, 23:32  [ТС]
alkagolik, я не понял, что подробнее? решение в лоб не пройдет.

AncinetHero, да, вы правы, это я не верно написал, n прямых.
0
50 / 50 / 12
Регистрация: 22.05.2011
Сообщений: 326
09.12.2011, 23:33
Ко второй задаче ответ выражается формулой
C++
1
n*(n+1)/2+1
Алгоритм кажется такой.

Для получения максимального ответа каждую следующую прямую мы будем проводить так, чтобы она пересекала все предыдущие, а значит если было проведено i прямых, наша прямая пройдет через i частей, значит количество станет равно +i (каждую часть она поделит на 2 части, всего из i частей станет 2*i частей).
И так далее, арифметическая прогрессия.
То есть если у нас проведена 1 прямая, max кусков 1+1=2. Если 2 прямых, кусков 2+2=4. Если 3 прямых, кусков 4+3=7 и т.д.
1
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
09.12.2011, 23:35  [ТС]
а само решение не помните?
0
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
09.12.2011, 23:38
допустим разрядность m числа x, надо узнать цифру y из разряда n <= m.
y = ( x / 10 ^ (m - n) ) mod 10

Добавлено через 1 минуту
Цитата Сообщение от neske Посмотреть сообщение
я не понял, что подробнее?
длина числа, тип массива. Это длинная арифметика?
1
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
09.12.2011, 23:40
в 1 задаче пару ифов и моды... решал когда-то
1
50 / 50 / 12
Регистрация: 22.05.2011
Сообщений: 326
09.12.2011, 23:40
Решение вписал выше.
1
1552 / 918 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
09.12.2011, 23:46  [ТС]
а вы точно так поняли задачу?
к примеру имеется строка, ну или массив с цифрами, в принципе неважно.
s = 1234567891011121314..
и на 13 месте стоит единица.
а нам необходимо найти на i - том месте.
0
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
09.12.2011, 23:49
ограничения?
0
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
09.12.2011, 23:52
Цитата Сообщение от neske Посмотреть сообщение
к примеру имеется строка, ну или массив с цифрами, в принципе неважно.
принципиально важно. длинная арифметика в uint - 10 разрядов, есть смысл скопировать нужные байты с помощью memcpy и вычислить число по формуле
0
50 / 50 / 12
Регистрация: 22.05.2011
Сообщений: 326
09.12.2011, 23:52
Цитата Сообщение от Dani Посмотреть сообщение
ограничения?
1 <= N <= 10^4 скорее всего)
0
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
09.12.2011, 23:54
когда я решал было 1 - 10^9
0
50 / 50 / 12
Регистрация: 22.05.2011
Сообщений: 326
10.12.2011, 00:01
Цитата Сообщение от alkagolik Посмотреть сообщение
принципиально важно. длинная арифметика в uint - 10 разрядов, есть смысл скопировать нужные байты с помощью memcpy и вычислить число по формуле
А откуда вы взяли эту формулу? Где можно прочитать про вывод данной формулы?
0
 Аватар для alkagolik
1599 / 622 / 113
Регистрация: 15.07.2011
Сообщений: 3,548
10.12.2011, 00:57
Цитата Сообщение от AncinetHero Посмотреть сообщение
А откуда вы взяли эту формулу?
из головы. Автор же упорно молчит, числа целые, не целые, символьные, не символьные. Я предположил что речь идет о целых числах, если да то формула имеет вид
https://www.cyberforum.ru/cgi-bin/latex.cgi?y_{P} = \frac{x_{P}} {P^{m - n}} mod P она даст цифру из разряда n<=m числа x, разрядности m. сс = P

Добавлено через 47 минут
если разряды считать справа (как и положено) то P^n
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
10.12.2011, 01:43
neske, ссылку на задачи можете дать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.12.2011, 01:43
Помогаю со студенческими работами здесь

Как определить на четном или нечетном месте стоит цифра в числе?
Как определить на четном или нечетном месте стоит цифра в числе? Не могу понять как определить это, если убирать по одной цифре в конце в...

Построить числовую последовательность и определить, какая цифра стоит в ее k-й позиции
Нужно чтобы выводило все элементы от 1 до 10000(n) и только потом выбирало k и всё это выводилось на экран Построить числовую...

Построить числовую последовательность и определить, какая цифра стоит в её К-й позиции
Построить числовую последовательность и определить, какая цифра стоит в её К-й позиции. В последовательность должны быть записаны числа...

Построить числовую последовательность и определить, какая цифра стоит на ее k-й позиции
Построить числовую последовательность и определить, какая цифра стоит на ее k-й позиции. в последовательность должны быть записаны четные...

Определить, какая цифра встречается в заданном числе чаще: 0 или 9
Дано натуральное число. Определить, какая цифра встречается в нем чаще: 0 или 9.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru