eolymp
bolt
Try our new interface for solving problems
Problems

Число

Число

Пусть числовая запись определяется по следующим правилам.

<Numerical record> ::= <Integer>|<Real>

<Integer>::= <Int>|<Sgn><Int>

<Real>::=<Nos>|<Sgn><Nos>

<Sgn>::= -|+

<Int>::=<Digit>|<Nozer><Inpp>

<Inpp>::=<Digit>|<Digit><Inpp>

<Digit>::=0|<Nozer>

<Nozer>::=1|2|3|4|5|6|7|8|9

<Nos>::=<Fix>|<Ex>|<Fix><Ex>

<Fix>::=<Int>|<Int>.|.<Inpp>|<Int>.<Inpp>

<Ex>::=E<Int2>|e<Int2>

<Int2>::=<It2>|<Sgn><It2>

<It2>::=<Digit>|<Nozer><Digit>

Составить программу, которая определит является ли заданная строка числовой записью. И если это не числовая запись, определить номер первой позиции, в которой нарушены приведенные правила.

Ограничения

Длина входной строки не превосходит 100.

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

Единственная строка, которая должна подвергнуться проверке.

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

Если строка является числовой записью, то выводится единственная строка с текстом Correct, иначе выводится текст The first mistake in position, за которым через пробел следует номер первой позиции, из-за которой строка не является числовым выражением (позиции считать занумерованными слева направо начиная с 1).

Time limit 1 second
Memory limit 64 MiB
Input example #1
25.13Ee23-
Output example #1
The first mistake in position 7
Input example #2
304
Output example #2
Correct
Input example #3
+0523
Output example #3
The first mistake in position 3
Input example #4
e123
Output example #4
The first mistake in position 4
Author Темури Заркуа
Source Ужгород. Международная летняя школа для участников ACM ICPC. Вторая лига. День Темури Заркуа,18 августа 2017 года