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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2020, 18:15   #1
Иван Самусь
Новичок
Джуниор
 
Регистрация: 19.11.2020
Сообщений: 2
По умолчанию Задача с сайта acmp 295 Шифровка

Шифровка
Разведкой был перехвачен ряд шифровок, которые передавал Джеймс Бонд. Известно, что каждое послание зашифровано методом циклического сдвига. Суть которого в том, что каждая буква заменяется на букву, отстоящую в алфавите от первой на определенном расстоянии. Это расстояние называется знаменателем шифра. Так, при знаменателе шифра 2 буква D превратится в F, буква Q – в S, а Z – в B. Известно, что Бонд использует знаменатели от 0 до 25, и составляет послания исключительно из заглавных букв английского алфавита. Знаменатели в шифровках постоянно меняются, так что расшифровать содержимое послания будет не просто. После тщательного анализа удалось примерно определить предмет посланий. Теперь для каждого послания точно известно одно из входящих туда слов.

Входные данные
В первой строке входного файла INPUT.TXT содержится строка с перехваченным посланием, а во второй строке – слово, которое обязательно присутствует в этом послании. Обе строки состоят только из заглавных английских букв и содержат от 1 до 40 символов.

Выходные данные
В выходной файл OUTPUT.TXT выведите расшифрованный текст, либо сообщение «IMPOSSIBLE», если разгадать шифровку невозможно. В тех случаях, когда расшифровка возможна с различными знаменателями, то следует вывести вариант с наименьшим таким значением.

Примеры
№ INPUT.TXT OUTPUT.TXT
1 HELLOAMERICA
AMERICA HELLOAMERICA
2 KHOORDPHULFD
HELLOAMERICA HELLOAMERICA
3 KHOORDPHULFD
KHOORDPHULFC IMPOSSIBLE

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Если не сложно ещё псевдокод напишите! пж!
Иван Самусь вне форума Ответить с цитированием
Старый 23.11.2020, 09:08   #2
WorldMaster
Старожил
 
Аватар для WorldMaster
 
Регистрация: 25.08.2011
Сообщений: 2,841
По умолчанию

Код:
            string ex = "AMERICA";
            for (int i = 0; i <= 25; i++)
            {
                string r = "";
                foreach (var c in "KHOORDPHULFD".ToCharArray())
                {
                    r += MoveC(c.ToString(), i);
                }
                Console.WriteLine(i+": "+r +(r.Contains(ex)?" <--- True":""));
            }
Изображения
Тип файла: png errr2.png (17.1 Кб, 6 просмотров)
Skype - wmaster_s E-Mail - WorldMasters@gmail.com
Работаем по 3 критериям - быстро, качественно, недорого. Заказчик выбирает любые два.
WorldMaster вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа в Си задача №90 acmp.ru kkhr Помощь студентам 3 05.12.2018 19:33
задача зайчики с сайта acmp .можете посмотреть в чём ошибка? - C++ Александр121 Общие вопросы C/C++ 1 02.05.2018 11:01
Acmp задача Dovbaka Помощь студентам 5 23.05.2017 07:56
Задача с acmp, сортировка по алфавиту Heirat Паскаль, Turbo Pascal, PascalABC.NET 3 13.02.2016 18:12