아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Древний календарь

면접 대비

시간 제한1초메모리 제한1024 MB

요약
N행 M자리 숫자 표에서 지워진 자리를 복원해 각 행이 이전 행보다 1 큰 수가 되도록 하고, 첫째 행의 수를 출력한다.
난이도

보통10점 중 6점

유형
구현, 배열, 수학, 그리디
정답자
아직 제출이 없습니다

문제

Как известно, в 2012 году человечество с повышенным вниманием относится к древним календарям. Особый интерес представляют те из них, которые не заканчиваются 2012 годом. Потрясающее открытие в этом направлении сделано археологами Татарстана. В древних захоронениях oни обнаружили прямоугольную табличку, которая после расшифровки сохранившихся знаков была записана в виде таблицы, состоящей из N строк по M десятичных цифр в каждой. Но полностью расшифровать табличку не удалось, так как некоторые цифры стерлись. Утраченные цифры в таблице были заменены символами «*».

По мнению археологов, найденная табличка представляет собой древний календарь, а записанные в ней M значные числа являются номерами последовательных дней некоторого периода. Первое число является номером первого дня этого периода, а каждое следующее число на единицу больше предыдущего. По этому календарю конец света отсутствует, и после дня, обозначаемого с помощью M девяток, следует номер дня из M нулей.

Требуется написать программу, которая восстанавливает утраченные цифры так, чтобы число в каждой строке таблицы, начиная со второй, было на единицу больше предыдущего, и выводит номер первого дня в найденном календаре.

입력

В первой строке входного файла записаны натуральные числа N и M – количество строк в таблице и длина каждой строки соответственно (1 ≤ N ≤ 100 000, 1 ≤ M ≤ 100 000, M×N ≤ 100 000). Далее следуют N строк по M символов в каждой, состоящих только из десятичных цифр от 0 до 9 и символов «*».

출력

Выходной файл должен содержать одну строку, состоящую из M цифр – номер первого дня календаря. Если вариантов восстановления несколько, можно вывести любой из них. Гарантируется, что хотя бы один способ восстановления существует.

예제4

  1. 예제 1

    입력
    1 2
    23
    
    예상 출력
    23
    
  2. 예제 2

    입력
    3 3
    1**
    *1*
    **1
    
    예상 출력
    109
    
  3. 예제 3

    입력
    2 3
    9**
    00*
    
    예상 출력
    999
    
  4. 예제 4

    입력
    3 4
    ****
    *0**
    01**
    
    예상 출력
    0098