Напишите программу, которая принимает в качестве входных данных строку, состоящую из печатных символов (ASCII 20-7E) и целого числа n
в [2,16], и выполняет следующую модификацию строки.
- Каждый символ в строке преобразуется в его ASCII-код (примеры приведены в шестнадцатеричном формате, хотя база 10 также допустима).
- Коды ASCII преобразуются в основание
n
и объединяются вместе. - Новая строка разделяется на все остальные символы. Если количество символов нечетное, последний символ удаляется полностью.
- Печатные коды ASCII (в базе 16) преобразуются обратно в их символы, тогда как непечатные коды ASCII удаляются.
- Полученная строка печатается.
Прецедент
вход
Hello, World!
6
меры
Hello, World!
48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21
2002453003003031125222330331030024453
20 02 45 30 03 00 30 31 12 52 22 33 03 31 03 00 24 45
Выход этой программы есть E001R"31$E
.
Это код гольф, поэтому применяются стандартные правила. Самый короткий код в байтах побеждает.
7
строка J
будет проходить через шаги J
-> 50
-> 101
-> 10
-> (no output)
, как и строка K
или L
.
H
ASCII 72 (десятичный) или 48 (шестнадцатеричный), но мне нужно 200 (основание 6). Вся строка 2 в примере, на мой взгляд, бесполезна и сбивает с толку