COCI-14 (2014) - Γύρος #6 - 3 (Meteor)

View as PDF

Submit solution

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

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

Μια φωτογραφία ενός μικρού μετεωρίτη ασυνήθιστου σχήματος δημοσιεύτηκε στο Διαδίκτυο. Σε εκείνη τη φωτογραφία, ο μετεωρίτης πέφτει από μεγάλο ύψος προς ένα ανώμαλο έδαφος. Υπήρχε επίσης μια φωτογραφία που τραβήχτηκε αμέσως μετά την πτώση του μετεωρίτη, αλλά δυστυχώς έχει χαθεί και πρέπει να ανακατασκευαστεί.

Η φωτογραφία απλοποιείται και αναπαρίσταται ως μήτρα χαρακτήρων. Ο χαρακτήρας "Χ" αντιπροσωπεύει ένα μέρος του μετεωρίτη, ο χαρακτήρας "#" αντιπροσωπεύει ένα μέρος του εδάφους και η υπόλοιπη εικόνα (αέρας) αποτελείται από τους χαρακτήρες ".".

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

Στη δεδομένη φωτογραφία, ο μετεωρίτης βρίσκεται αυστηρά πάνω από το έδαφος. Πιο συγκεκριμένα, υπάρχει τουλάχιστον μία σειρά αέρα (κουκκίδες) για τον οποίο ο μετεωρίτης είναι εντελώς πάνω από αυτόν και το έδαφος είναι εντελώς κάτω από αυτόν. Επιπλέον, ολόκληρη η κάτω σειρά της εικόνας είναι μέρος του εδάφους.

Ο μετεωρίτης έπεφτε κάθετα προς τα κάτω. Όταν έπεφτε στο έδαφος, διατηρούσε το σχήμα του, το ίδιο ισχύει και για το έδαφος. Ανακατασκευάστε τη φωτογραφία μετά την πτώση μετεωρίτη!

Είσοδος

Η πρώτη γραμμή εισόδου περιέχει τους ακέραιους αριθμούς R και S\;(3 \leq R,\;S \leq 3\;000), τον αριθμό των γραμμών και τον αριθμό των στηλών της φωτογραφίας.

Οι ακόλουθες R γραμμές περιέχουν τη φωτογραφία που περιγράφεται στην εργασία.

Έξοδος

Τυπώστε την απαιτούμενη φωτογραφία (διαστάσεις R \times S) μετά την πτώση μετεωρίτη.

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

input

5 6
.XXXX.
...X..
......
#..###
######

output

......
.XXXX.
...X..
#..###
######

input

9 7
XXX.XXX
X.XXX.X
X..X..X
X.....X
.......
.#...#.
.##.##.
.#####.
#######

output

.......
.......
.......
.......
XXX.XXX
X#XXX#X
X##X##X
X#####X
#######

Comments

There are no comments at the moment.