Zlagalica
Η μικρή Μάγια αγαπούσε πάντα τα παζλ. Και αφού όλοι γύρω της το γνωρίζουν εδώ και πολύ καιρό, δεν είναι έκπληξη που μια ηλιόλουστη μέρα, η Μάγια έλαβε ένα παζλ ως δώρο ένα περίεργο παζλ.
Αυτό το παζλ έχει κομμάτια. Κάθε κομμάτι έχει ορθογώνιο σχήμα και κάποιο συγκεκριμένο χρώμα. Επίσης, κάθε κομμάτι έχει γραμμένους στην πίσω πλευρά του 2 αριθμούς: και . Μετά από ένα διάστημα επιδέξιων συνδυασμών των κομματιών και προσπάθειας της Μάγιας να τα ταιριάξει, κατάλαβε το νόημα αυτών των αριθμών.
Ανακάλυψε ότι ο αριθμός αντιπροσωπεύει την "κατεύθυνση", με άλλα λόγια, αν το επόμενο κομμάτι του παζλ συνδέεται με το τρέχον κομμάτι από την πάνω ή από τη δεξιά πλευρά του τρέχοντος κομματιού. Ο αριθμός καθορίζει την αρχική στήλη/σειρά όπου συνδέουμε το επόμενο κομμάτι του παζλ με το τρέχον κομμάτι. Συγκεκριμένα:
- Εάν το είναι ίσο με , προσθέτουμε το επόμενο κομμάτι πάνω από το τρέχον συνδέοντας την κάτω αριστερή γωνία του με την επάνω άκρη του τρέχοντος κομματιού στη στήλη d.
- Εάν το είναι ίσο με , προσθέτουμε το επόμενο κομμάτι δεξιά συνδέοντας την κάτω αριστερή γωνία του με τη δεξιά άκρη του τρέχοντος κομματιού στη γραμμή d.
Ας το δείξουμε αυτό για κομμάτια χρωματισμένα με τα χρώματα "a" και "b". Η εικόνα 1 δείχνει την περίπτωση όπου και . Η εικόνα 2 δείχνει την περίπτωση όπου και . (Και στις δύο περιπτώσεις, οι αριθμοί και αντιπροσωπεύουν τους αριθμούς που γράφονται στην πίσω πλευρά του κομματιού που είναι χρωματισμένο "a").
Εικόνα 1
Εικόνα 2
Η Μάγια έχει κουραστεί από αυτό το πολυμπερδεμένο παζλ, αλλά η περιέργειά της δεν έχει όρια! Γι' αυτό ζητά τη βοήθειά σας. Την ενδιαφέρει να μάθει, για μια δοθείσα περιγραφή κάθε κομματιού του παζλ και τη σειρά τοποθέτησής τους, πώς θα φαίνεται το ολοκληρωμένο παζλ. Γράψτε ένα πρόγραμμα που εκτυπώνει τις διαστάσεις (ύψος και πλάτος) του ολοκληρωμένου παζλ, καθώς και την τελική του εμφάνιση μέσα σε ένα ορθογώνιο με το ίδιο ύψος και πλάτος, όπου η "." αντιπροσωπεύει τις θέσεις όπου δεν υπάρχει κομμάτι του παζλ.
Είσοδος
Στην πρώτη γραμμή, θα υπάρχει ο , ο αριθμός των κομματιών του παζλ. Στην -οστή από τις επόμενες γραμμές θα υπάρχουν ανά 1 χαρακτήρα και 4 ακέραιοι, με τη σειρά: , , , , - η περιγραφή του -οστού κομματιού:
- ο θα είναι πάντα 1 μικρό γράμμα του αγγλικού αλφαβήτου και αντιπροσωπεύει το χρώμα του -οστού κομματιού του παζλ
- οι και αντιπροσωπεύουν με τη σειρά, τον αριθμό των σειρών και στηλών του -οστού κομματιού του παζλ
- οι και (εξαρτάται από το )) είναι οι αριθμοί που βρίσκονται στο πίσω μέρος του -οστού κομματιού του παζλ, όπως αναφέρεται και στην εκφώνηση της άσκησης.
Στην τελευταία γραμμή της εισόδου θα υπάρχουν ακέραιοι, η σειρά με την οποία συνδέονται τα κομμάτια, όπου ο αριθμός αντιπροσωπεύει το -οστό κομμάτι του παζλ στην είσοδο. Κάθε κομμάτι του παζλ θα εμφανιστεί στη σειρά ακριβώς μία φορά.
Έξοδος
Εκτυπώστε το ύψος και το πλάτος του ολοκληρωμένου παζλ. Μετά από αυτό, εκτυπώστε την εμφάνιση του παζλ εντός ενός ορθογώνιου με το ίδιο ύψος και πλάτος. Στις θέσεις εντός του ορθογωνίου όπου δεν υπάρχει κομμάτι του παζλ, εκτυπώστε ".".
Βαθμολογία
Υποπρόβλημα | Βαθμοί | Περιορισμοί |
1 | 17 | Η σειρά σύνδεσης των κομματιών του παζλ θα είναι ταυτόσημη με τη σειρά εισαγωγής τους. |
2 | 12 | Για κάθε κομμάτι του παζλ: . |
3 | 12 | Για κάθε κομμάτι του παζλ: . |
4 | 9 | Κανένας επιπλέον περιορισμός. |
Παραδείγματα
input
2
a 3 4 0 3
b 2 5 1 1
1 2
output
5 7
..bbbbb
..bbbbb
aaaa...
aaaa...
aaaa...
input
2
a 3 4 0 3
b 2 5 1 1
2 1
output
4 9
.....aaaa
.....aaaa
bbbbbaaaa
bbbbb....
input
4
g 9 5 0 2
a 3 2 1 1
c 5 10 0 2
p 8 7 1 6
4 3 2 1
output
18 17
..........ggggg..
..........ggggg..
..........ggggg..
..........ggggg..
..........ggggg..
..........ggggg..
..........ggggg..
..........ggggg..
........aaggggg..
........aa.......
ppppppp.aa.......
pppppppcccccccccc
pppppppcccccccccc
pppppppcccccccccc
pppppppcccccccccc
pppppppcccccccccc
ppppppp..........
ppppppp..........
Comments