С сожалением сообщаем, что война разворачивается не в нашу пользу. Разведка докладывает, что враги стали использовать инновационное шифрование. Мы теряем стратегическое превосходство! Генерал Кек в ярости – нужно в кратчайшие сроки разработать систему дешифровки сообщений.
Подкупленный вражеский криптограф рассказал, что они используют шифр сдвига на N, при котором алфавит исходного текста сдвигается на N позиций вправо.
Пример для сдвига на 3
Исходный алфавит
А Б В Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
Шифрованный
Г Д Е Ё Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я А Б В
Тогда открытый текст
Съешь же ещё этих мягких французских булок, да выпей чаю.
становится
Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.
Лингвисты предоставили частотный анализ русского языка.
Поскольку неизвестно, какой N был использован в каждом сообщении, придётся его вычислить.
В шифрованном тексте требуется подсчитать частоты букв и сравнить со среднестатистическими частотами для языка. Из сравнения станет ясно, какой сдвиг был использован противником. А с известным сдвигом уже можно легко расшифровать сообщение.
Вам требуется написать программу, которая это сделает.
Чем больше текст, тем точнее частотный анализ. На коротких текстах точность будет низкой.
Зашифрованный текст длиной не менее 1000 символов
Дешифрованный текст
Исфршё нёюёцрёс хф хсошрёт хфсё, хфйзфсёрозёе жкнмонукуущд уфищ; хфй чзфйэёшбт скхубт хфшфсрфт нзфурот гыфт цёнуфчосче чшщр шцфчшо.
Чцкйо йзфцеу фшрцбшфиф чфзкшё сфцй Оуиксчшёй, ыфнеоу гшфиф з збчюкп чшкхкуо цфчрфюуфиф ыфссё, нёуотёс з збчюкп чшкхкуо чрцфтуфк хфсфмкуок. Нё хфчскйуок ифйб йксё жсёифцфйуфиф чкткпчшзё чкцвкнуф хфюёшущсочв, фш жбсфиф жфиёшчшзё о зсоешксвуфчшо ук фчшёсфчв о чскйё.
«О экт уоэшфмукк эксфзкр, шкт уё жфсвюкк хцошенёкш. Хфэктщ фуо зкэуф ук тфищш хфуешв? Укщмксо ук ечуф, эшф уё ъфук жфсвюфиф уоэшфмуфк збисейош кяк уоэшфмукп?»
Ийк-шф з чщтцёрк укзойотбк эёчб очшфцисо он ткыёуоэкчрфиф эцкзё укчрфсврф ищсроы щйёцфз.
«Рёр щмк, фрёнбзёкшче, хфнйуф. Экт уоэшфмукк эксфзкр, шкт йфсвюк нёчшёзсекш мйёшв. Гшф ицккш ктщ йщющ. Уф е щткд жбшв шкцхксозбт, рфийё ущмуф. Уё хбюубы хцоктёы жкн ткуе ук чрщэёдш, зфчшфцмкуубк хфэошёшксо щ хфцфиё ук шфсхешче, хцкрцёчубк мкуяоуб ук збчтёшцозёдш ч нётоцёуокт чкцйьё тфп чосщгш... Жсёифйёце нёжфшёт ищцрфз он отхкцёшфцчроы шдцкт зчк гшф фчшёсфчв з йёскрфт хцфюсфт». Хцомёз р хщчшбт йкчуёт енбр, Исфршё хкцкчшёзос уфищ о нёчшфуёс — з чхоущ рёр жщйшф зфуносочв чфшуо оис, фш жфсо нёйкциёсфчв зкрф.
«Е щткд жбшв шкцхксозбт. Кйоучшзкууёе ыфцфюёе зкяв, рфийё рёмйбп юёи — очхбшёуок. Чшщхёшв фчшфцфмуф щэоювче ч хфцёношксвуфп чрфцфчшвд».
Жсомёпюёе йзкцв зукнёхуф цёчхёыущсёчв. Исфршё цкнрф фжкцущсче, шёр, эшф ыцщчшущсё юке, о ктщ чшфосф уктёсфиф шцщйё хфйёзошв чшцёйёсвэкчрщд ицотёчщ. Уё хфцфик чшфес сфцй Оуиксчшёй — рцщхубп, цщтеубп, йфжцфйщюубп уё зой тщмэоуё. Ч йцщмксджуфп щсбжрфп фу мкчшфт хцоисёчос Исфршщ хцфпшо з рфтуёшщ.
«Чсфзуф уёт хцкйчшфош сджкнуёе чзкшчрёе жкчкйё».
Глокта зашаркал по плиткам пола, подволакивая безжизненную ногу; под сводчатым лепным потолком звонким эхом разносился стук трости.
Среди дворян открытого совета лорд Ингелстад, хозяин этого в высшей степени роскошного холла, занимал в высшей степени скромное положение. За последние годы дела благородного семейства серьезно пошатнулись, от былого богатства и влиятельности не осталось и следа.
«И чем ничтожнее человек, тем на большее притязает. Почему они вечно не могут понять? Неужели не ясно, что на фоне большого ничтожное выглядит еще ничтожней?»
Где-то в сумраке невидимые часы исторгли из механического чрева несколько гулких ударов.
«Как уже, оказывается, поздно. Чем ничтожнее человек, тем дольше заставляет ждать. Это греет ему душу. Но я умею быть терпеливым, когда нужно. На пышных приемах без меня не скучают, восторженные почитатели у порога не толпятся, прекрасные женщины не высматривают с замиранием сердца мой силуэт... Благодаря заботам гурков из императорских тюрем все это осталось в далеком прошлом».
Прижав к пустым деснам язык, Глокта переставил ногу и застонал — в спину как будто вонзились сотни игл, от боли задергалось веко.
«Я умею быть терпеливым. Единственная хорошая вещь, когда каждый шаг — испытание. Ступать осторожно учишься с поразительной скоростью».
Ближайшая дверь внезапно распахнулась. Глокта резко обернулся, так, что хрустнула шея, и ему стоило немалого труда подавить страдальческую гримасу. На пороге стоял лорд Ингелстад — крупный, румяный, добродушный на вид мужчина. С дружелюбной улыбкой он жестом пригласил Глокту пройти в комнату.
«Словно нам предстоит любезная светская беседа».