COCI '21 Contest 2 #1 Kaučuk

View as PDF

Submit solution


Points: 5 (partial)
Time limit: 1.0s
Memory limit: 512M

Problem type

Davor the scientist writes his papers in \LaTeX. Inspired by \LaTeX, he came up with Kaučuk. Kaučuk is a very simple program for preparing a piece of text for print. It allows you to number the headings of sections, subsections and subsubsections and prepare them for print.

Kaučuk has only three different commands:

  • The section command starts a new section. All sections from the input are numbered in the output with positive integers starting from 1, in the order they appear in the input (see first example).

  • The subsection command starts a new subsection. Subsections are numbered using two numbers: the number of the section which contains the subsection, and the number of the subsection within the section (see second example). In each section the subsection numbering starts again from 1 (see third example).

  • The subsubsection command starts a new subsubsection which uses three numbers: the number of the section, the number of the subsection and the number of the subsubsection within the subsection, in a manner similar to subsections within sections (see second example).

It is guaranteed that in the input, each subsection is contained in some section, and each subsubsection is contained in some subsection. Davor might be a fine scientist, but programming is not his strong suit, which is why he is asking you to help him write a program which prepares a text written in Kaučuk for print.

Input Specification

The first line contains a positive integer n (1 \le n \le 100), the number of lines of Kaučuk commands.

The following n lines contain Davor's Kaučuk code. Each line of code is made up from two strings of characters, separated by a single space: the type of section (section, subsection or subsubsection) and its title. Each title is made up from at most 20 lowercase letters.

Output Specification

In n lines, you should number and print the titles of the sections, subsections and subsubsections from Davor's code.

Constraints

SubtaskPointsConstraints
1101 \le n \le 3
210The Kaučuk code will contain only the section command.
310The Kaučuk code will contain only the section and subsection commands.
420No additional constraints.

Sample Input 1

3
section zivotinje
section boje
section voce

Sample Output 1

1 zivotinje
2 boje
3 voce

Sample Input 2

4
section zivotinje
subsection macke
subsection psi
subsubsection mops

Sample Output 2

1 zivotinje
1.1 macke
1.2 psi
1.2.1 mops

Sample Input 3

4
section zivotinje
subsection psi
section voce
subsection ananas

Sample Output 3

1 zivotinje
1.1 psi
2 voce
2.1 ananas

Comments

There are no comments at the moment.