Старые олимпиады: 2007 - интернет - C

Dec 27, 2015 23:53

И вторая задача сегодня


C. Кроличий блокнот

Ограничение времени: 1 сек

Ограничение памяти: 64 Мб

Черный Кролик, один из любопытнейших обитателей Двоичного Леса, славится своей общительностью и любознательностью. Также он славится своей необычайной рассеянностью и неаккуратностью, чем он сильно отличается от своего кузена, не менее прославленного Белого Кролика.

Как-то раз Белый Кролик заглянул в гости к Черному. Черный же Кролик в это время что-то торопливо зарисовывал в свою записную книжку. Белый Кролик заглянул внутрь неё и ужаснулся, увидев совершенно непонятную мешанину разнообразных символов, написанных вдоль, вкривь, вкось и поперек, притом разными цветами и поверх друг друга! Однако через мгновение Белому Кролику стало ясно, что больше всего в этом блокноте телефонных номеров. А телефонным номером в Двоичном Лесу называется любая строка из ровно десяти цифр, не прерываемая никакими другими знаками (так, например, "1111111111" - номер, а "12345678912" и "111-111-111-1" - не номера). Поэтому Белый Кролик решил помочь двоюродному брату, выписав из записной книжки отдельно все телефонные номера.

Конечно, вручную это сделать достаточно сложно, поэтому Белый Кролик решил написать программу, которая сделает эту работу за него. А так ли это просто, если даже не принимать во внимание то, что почерк Черного Кролика чрезвычайно неразборчив?

[Исходные данные]

Текст, размером не более 100 кб, содержащий не менее одного телефонного номера, оканчивающийся символом конца файла.

[Результат]

Список всех телефонных номеров в том порядке, в каком они встречаются в тексте, причем каждый номер должен находиться в отдельной строке. Учтите, если в тексте телефонный номер входит как подстрока в состав более длинной строки, состоящей только из цифр, то Белый Кролик не может с уверенностью сказать, номер это или нет, поэтому такие номера выписывать не надо.

задача, двоичный лес, старые олимпиады

Previous post Next post
Up