Это довольно простой код для игры в гольф. Ваша программа, учитывая строку ASCII, должна разбить эту строку на две строки, которые она будет оценивать. Если вторая строка «позже», чем первая, она вернет 1, если она «раньше», чем первая, вернет -1, а если они одинаковые, вернет 0. В уточнить, что означают «позже» и «раньше», давайте рассмотрим коды символов ASCII. Вам нужно сравнить каждый символ строки, рассматривая каждый из них как цифры числа. Позже относится к большему числу, встречающемуся после меньшего числа. Строки будут отформатированы с дефисом для разделения двух групп ввода.
Посмотрите на этот пример:
7-9
как вход должен вернуться1
.
7
преобразует в код ASCII55
и9
преобразует в код ASCII57
.Как
57
происходит численно после55
,9
позже7
.
Другой пример:
LKzb-LKaj
как вход должен вернуть-1
Последовательности кода ASCII для этого
76-75-122-98
и76-75-97-106
Это задача для игры в гольф, и количество байтов определяет, как будут оцениваться записи.
Любой ввод из 95 печатных символов ASCII принимается, за исключением пробелов и дефисов для чего угодно, кроме разделения ввода. Кроме того, строки не обязательно имеют одинаковую длину.
Удачи!
РЕДАКТИРОВАТЬ: Чтобы быть более ясным, каждый символ должен рассматриваться как цифра в числе. В этом примере LKzb-LKaj
, хотя j
позже b
, позже , z
позже a
, и поскольку это более значимая цифра, она имеет приоритет. Предоставленная строка всегда будет содержать не менее 3 символов, что исключает пустые строки из сферы этой проблемы.
РЕДАКТИРОВАТЬ: Вот еще несколько тестов, для вашей помощи:
A-9
->-1
11-Z
->-1
3h~J*-3h~J*
->0
Xv-Y0
->1
11-Z
-> -1
не имеет смысла, учитывая текущую формулировку вопроса. Z
(90) больше 1
(49) и является наиболее значимой буквой. Пожалуйста, уточните, как сравниваются строки разной длины.
11>Z
в ваших примерах, когда 1<Z
. Должно быть какое-то неопределенное поведение для строк разной длины, или пример неправильный.
~
равным 126, затем увеличивали бы следующую цифру на единицу, возвращая начальную цифру в !
. Каждое увеличение самой значимой цифры эквивалентно увеличению второй самой значимой цифры на 127.