Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.02.2010, 23:04   #1
LOVELY
Пользователь
 
Регистрация: 13.12.2008
Сообщений: 10
По умолчанию Максимальное число

Здравствуйте)
Помогите, пожалуйста, решить вот такую вот задачку (в Паскале)...

Считывается натуральное число N. Определяется максимальное число, получаемое при исключении K цифр из N.

В файле IN.txt содержится 2 натуральных числа N и K разделённые пробелом
на экране будет показано полученное число.

Образец:
Input 514362 1
Output 54362

Последний раз редактировалось LOVELY; 11.02.2010 в 23:09.
LOVELY вне форума Ответить с цитированием
Старый 11.02.2010, 23:43   #2
Namolem
Oo
Форумчанин
 
Аватар для Namolem
 
Регистрация: 10.10.2009
Сообщений: 350
По умолчанию

найти k минимальных чисел исключить их из массива

Последний раз редактировалось Namolem; 12.02.2010 в 02:21.
Namolem вне форума Ответить с цитированием
Старый 12.02.2010, 01:21   #3
LeBron
Форумчанин
 
Регистрация: 10.10.2009
Сообщений: 680
По умолчанию

Какие ограничения? Для маленьких - жадным квадратическим перебором, тоесть сначала выбрасываем первую подходящую минимальную цифру справа, потом вторую, и так далее. Каждый раз главное смотреть, чтоб после избранной цифры осталось что выбрасывать.

Если ограничения олимпиадные (скажем, в числах по 100000 цифр или больше), то надо юзать или оптимальные бинарные структуры за n*log(n), или линейное решение с вычеркиваниями по цифрам (мне оно больше нравится, его писать короче намного, и оно интуитивно понятней), которое проигрывает в константе, но за счет асимптотики быстрее n*log(n) уже при нескольких миллионах цифр.
Namolem, или я Вас неправильно понял, или решение неверное. Если речь идет о том, чтоб выбросить из числа "самые маленькие" цифры - тогда неверно. Самый простой пример -
231 1
Если выбросить минимальную 1, то получим 23, если же выбросить 2 (2 больше 1), то будет 31. 31>23.

Последний раз редактировалось LeBron; 12.02.2010 в 05:58.
LeBron вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Написать программу, которая за меньшее число ходов отгадывает загаданное число gomz007 Помощь студентам 16 08.11.2009 12:57
Определить максимальное по абсолютному значению число VeseloffS Помощь студентам 17 09.06.2009 23:39
Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным Rid Паскаль, Turbo Pascal, PascalABC.NET 4 22.12.2008 16:50
Найти максимальное число.Паскаль. Karabas Паскаль, Turbo Pascal, PascalABC.NET 2 16.12.2008 21:13
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43