|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.05.2023, 11:45 | #1 |
Регистрация: 21.05.2023
Сообщений: 4
|
Помогите решить задачу на C++
Напишите программу, которая составляет из цифр введённой строки число-палиндром максимальной длины (которое читается одинаково слева направо и справа налево). Если таких чисел несколько, нужно вывести минимальное из них. Все имеющиеся цифры использовать не обязательно, но количество цифр в ответе должно быть максимально возможным.
Входные данные Входная строка содержит цифры (по крайней мере, одну) и, возможно, другие символы. Выходные данные Программа должна вывести число-палиндром максимальной длины, которое можно составить из цифр входной строки. Примеры входные данные for i:=99921 downto 2 выходные данные 29192 Мой код: Код:
Последний раз редактировалось BDA; 21.05.2023 в 19:24. |
21.05.2023, 18:08 | #2 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 976
|
думаю палиндромы лучше создавать из центра
поместив в центр символы количества нечётного и расставляя по бокам символы количества чётного сначала наверняка разделив количества чётные и нечётные и сортируя по количеству чтоб в центре были наибольшие тогда небось нужно 2 варианта развития
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
Последний раз редактировалось сфинкс; 21.05.2023 в 18:10. |
21.05.2023, 19:54 | #3 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Вроде работает. Сначала печатается половина (округленная до четного) от количества каждой цифры по возрастанию цифр (а ноль после первой ненулевой цифры). Потом печатается цифра в середине палиндрома, если есть нечетное количество какой-либо цифры (минимальной). Затем печатается снова половина, но по убыванию цифр (а ноль перед той же цифрой, что в первом цикле). Если имеются только нули в четном количестве, то печатается один ноль.
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 21.05.2023 в 20:20. |
21.05.2023, 22:39 | #4 |
Регистрация: 21.05.2023
Сообщений: 4
|
BDA, Спасибо большое. Подскажите, чтобы так писать это только опыт или можете посоветовать литературу для развития логики?
|
22.05.2023, 08:22 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,342
|
Пожалуйста. Литературу по логике не могу посоветовать - не читал. Думаю, можно и изящнее как-нибудь решить. Опыт важен - решайте больше задачек, придумывайте сложные тесты (на граничные условия, большие по объему) и проверяйте свое решение на корректность и скорость работы.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите решить задачу на с#,уже час ломаю голову,не могу решить. | KeyJW | Помощь студентам | 1 | 09.11.2022 22:15 |
Помогите решить задачу,пожалуйста!!!вторую часть не могу решить. | Родион Афанасьев | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 03.03.2018 19:44 |
Помогите решить задачу на с++ | Nafan142rus | Помощь студентам | 1 | 11.06.2017 21:33 |