COCI-13 (2013) - Γύρος #5 - 2 (Obilazak)

View as PDF

Submit solution

Points: 35 (partial)
Time limit: 1.0s
Memory limit: 32M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Obilazak

Ο μικρός Mirko έκανε μια τουριστική επίσκεψη σε ένα χωριό κοντά στο Donji Andrijevci, μια πόλη στη Σλαβονία. Όπως συμβαίνει, η διάταξη των δρόμων στο χωριό παρουσιάζει τρομερή ομοιότητα με το σχήμα ενός τέλειου δυαδικού δέντρου της τάξης K. Ένα τέλειο δυαδικό δέντρο της τάξης K αποτελείται από 2^K - 1 κόμβους διατεταγμένους σε K επίπεδα (όπως στην εικόνα). Κάθε κόμβος περιέχει ένα κτίριο με ετικέτα έναν αριθμό σπιτιού. Επιπλέον, όλα τα κτίρια εκτός από αυτά στο τελευταίο επίπεδο έχουν ένα αριστερό και δεξί παιδί (δείτε ξανά την εικόνα).

coci13e2-figure.svg
Τέλειο δυαδικό δέντρο παραγγελιών 2 και 3.

Ο Mirko έχει επισκεφτεί όλα τα κτίρια ενός χωριού και σημείωσε την ακριβή σειρά εισόδου. Τώρα θέλει να σας περιγράψει πώς μοιάζει το χωριό, αλλά δεν θυμάται καλά. Ευτυχώς, θυμάται τον τρόπο με τον οποίο επισκέφτηκε τα κτίρια:

  1. στην αρχή στεκόταν μπροστά στο μοναδικό κτίριο στο πρώτο επίπεδο
  2. εάν το κτίριο στο οποίο στέκεται αυτή τη στιγμή έχει ένα αριστερό παιδί που δεν έχει επισκεφτεί ακόμα, θα μετακινηθεί μπροστά από το αριστερό παιδί
  3. Εάν το κτίριο δεν έχει αριστερό παιδί ή το έχει ήδη επισκεφτεί, θα εισέλθει στο τρέχον κτίριο και θα γράψει τον αριθμό του σπιτιού του στο χαρτί του.
  4. αν έχει ήδη επισκεφτεί το τρέχον κτίριο και το κτίριο έχει δεξί παιδί, θα κινηθεί μπροστά από το δεξί παιδί
  5. αν έχει επισκεφτεί το τρέχον κτίριο και το αριστερό και δεξί παιδί του, θα επιστρέψει στον γονέα του τρέχοντος κτιρίου.

Μετά την επίσκεψη στα χωριά στις παραπάνω εικόνες, το χαρτί θα μοιάζει με αυτό: 2-1-3 για το πρώτο χωριό και 1-6-4-3-5-2-7 για το δεύτερο χωριό. Γράψτε ένα πρόγραμμα για να βοηθήσετε τον Mirko να ανακατασκευάσει τη σειρά των αριθμών σπιτιών σε κάθε επίπεδο.

Είσοδος

Η πρώτη γραμμή εισόδου περιέχει τον ακέραιο αριθμό K\;(1 \leq K \leq 10), τον αριθμό των επιπέδων του χωριού που μόλις επισκέφτηκε ο Mirko.
Η δεύτερη γραμμή εισόδου περιέχει 2^K ακέραιους αριθμούς, την ακολουθία των οικιακών αριθμών στο χαρτί του Mirko. Οι αριθμοί σπιτιών θα είναι μοναδικοί και από το διάστημα [1,\;2^K].

Έξοδος

Η έξοδος πρέπει να αποτελείται από K γραμμές. Η i-οστή γραμμή πρέπει να περιέχει την ακολουθία των αριθμών σπιτιών στο i-οστό επίπεδο του χωριού.

Παραδείγματα

input

2
2 1 3

output

1
2 3
Επεξήγηση του 1ου παραδείγματος:

Το παράδειγμα αντιστοιχεί στην εικόνα της εργασίας.


input

3
1 6 4 3 5 2 7

output

3
6 2
1 4 5 7
Επεξήγηση του 2ου παραδείγματος:

Το παράδειγμα αντιστοιχεί στην εικόνα της εργασίας.


Comments

There are no comments at the moment.