QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 1024 MB Total points: 100 Difficulty: [show] Hackable ✓

#24556. Путешествие

Statistics

Маленький R и Маленький X собираются отправиться в путешествие на скоростном поезде. Они купили два билета во второй класс, на каждом из которых указаны номер вагона и номер места. Оба надеются, что их места окажутся соседними, чтобы во время поездки они могли сидеть вместе.

Поезд, на котором они едут, состоит из $17$ вагонов, пронумерованных от 01 до 17. Среди них вагоны 01 и 16 — это вагоны первого класса, а остальные вагоны — вагоны второго класса. Оба купили билеты во второй класс, поэтому их места находятся в вагонах второго класса. В каждом вагоне второго класса всего $18$ рядов, по $5$ мест в каждом ряду. Номер места состоит из двузначного номера ряда и одной заглавной латинской буквы; например, 03C обозначает место C в $3$-м ряду. Места в каждом ряду расположены слева направо, а буквы мест идут по порядку: A, B, C, D, F, причем между местом C и местом D находится проход; то есть в каждом ряду слева от прохода расположена последовательность мест A, B, C, а справа — D, F. Ниже приведена схема расположения мест в одном вагоне второго класса:

problem_24556_244e5912ed2448b3cd8b5b9146867833.png

Два места являются соседними тогда и только тогда, когда они находятся в одном ряду одного и того же вагона, расположены по одну сторону от прохода и являются соседними в последовательности мест с этой стороны.

Вам нужно помочь Маленькому R по порядку определить:

  • Находятся ли места, соответствующие двум билетам, в одном вагоне;
  • Находятся ли места, соответствующие двум билетам, в одном ряду одного и того же вагона;
  • Находятся ли места, соответствующие двум билетам, в одном ряду одного и того же вагона и по одну сторону от прохода;
  • Являются ли места, соответствующие двум билетам, соседними.

Входные данные

Первая строка входных данных содержит четыре строки $c_1, s_1, c_2, s_2$, обозначающие соответственно номер вагона и номер места на билете Маленького R, а также номер вагона и номер места на билете Маленького X.

Выходные данные

Выведите в одной строке строку из символов 01 длины $4$, представляющую ответы на четыре вопроса по порядку, где 1 означает «да», а 0 означает «нет».

Примеры

Входные данные 1

02 01A 02 01B

Выходные данные 1

1111

Примечание

Вагон 02 — это вагон второго класса. Места 01A и 01B находятся в одном вагоне, в одном ряду, по одну сторону от прохода и являются соседними, поэтому выводится 1111.

Входные данные 2

02 01C 02 01A

Выходные данные 2

1110

Примечание

Оба места находятся в одном вагоне, в одном ряду и по одну сторону от прохода, но между 01C и 01A расположено место 01B, поэтому они не являются соседними; следовательно, выводится 1110.

Входные данные 3

02 01C 02 01D

Выходные данные 3

1100

Входные данные 4

02 02B 02 01A

Выходные данные 4

1000

Входные данные 5

02 01A 03 01A

Выходные данные 5

0000

Ограничения

Для всех тестовых данных выполняется:

  • $c_1, c_2$ — двузначные номера вагонов от 01 до 17, кроме 01 и 16;
  • $s_1, s_2$ — корректные номера мест в соответствующих вагонах, то есть первые два символа образуют номер ряда от 01 до 18, а последний символ — одна из букв A, B, C, D, F;
  • Два билета не соответствуют одному и тому же месту, то есть $c_1 \ne c_2$ или $s_1 \ne s_2$.
Номер теста Особые свойства
$1 \sim 4$ A, B, C
$5 \sim 10$ A, B
$11 \sim 14$ A
$15 \sim 17$ D
$18 \sim 20$ Нет

Особое свойство A: Оба места находятся в одном вагоне, то есть $c_1 = c_2$.

Особое свойство B: Оба места находятся в одном ряду, то есть первые два символа строки $s_1$ совпадают с первыми двумя символами строки $s_2$.

Особое свойство C: Оба места находятся по одну сторону от прохода.

Особое свойство D: Место Маленького R — это место D, а место Маленького X — это место F, то есть последний символ строки $s_1$ равен D, а последний символ строки $s_2$ равен F.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.