COCI-17 (2017) - Γύρος #1 - 2 (Tetris)

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
Tetris

Ο Ivica είναι ένας παθιασμένος επιστήμονας υπολογιστών. Πρόσφατα άρχισε να εργάζεται στο πρώτο του παιχνίδι για υπολογιστή: έναν κλώνο του δημοφιλούς Tetris. Αν και απέχει πολύ από το να τελειώσει, το πρόγραμμά του υποστηρίζει την τοποθέτηση πέντε διαφορετικών σχημάτων Tetris που φαίνονται στην παρακάτω εικόνα σε έναν πίνακα. Πριν το τοποθετήσετε στον πίνακα Tetris, το σχήμα μπορεί να περιστραφεί κατά 90 μοίρες αυθαίρετες φορές και να χρωματιστεί. Επιπλέον, η τρέχουσα έκδοση του παιχνιδιού δεν υποστηρίζει την τοποθέτηση του σχήματος, εάν αυτό σημαίνει ότι το τελικό σχήμα ξεφεύγει από τα όρια του πίνακα ή επικαλύπτεται με ένα άλλο υπάρχον σχήμα στον πίνακα.

coci17a2-figure-1.svg

Ενώ ο Ivica ήταν στο σχολείο, η αδερφή του Marica ξεκίνησε το παιχνίδι και περίστρεψε τυχαία, χρωμάτισε και τοποθέτησε τα σχήματα με τρόπο ώστε τα διπλανά σχήματα να έχουν διαφορετικό χρώμα. Δύο σχήματα είναι δίπλα, αν μοιράζονται μια κοινή πλευρά ή αγγίζουν τα άκρα τους.

Όταν ο Ivica επέστρεψε στον υπολογιστή του, βρήκε το παιχνίδι να τρέχει με τα σχήματα που έβαλε η αδερφή του. Θέλει να μάθει πόσα από τα σχήματα υπάρχουν στον πίνακα του Tetris και σας ζητά να τον βοηθήσετε να λύσει αυτό το πρόβλημα ενώ είναι απασχολημένος με τη βελτίωση του παιχνιδιού.

Είσοδος

Η πρώτη γραμμή εισόδου περιέχει θετικούς ακέραιους αριθμούς N και M\;(1 \le N, M \le 10) που αντιπροσωπεύουν τον αριθμό των γραμμών και των στηλών του πίνακα Tetris.
Κάθε μία από τις ακόλουθες N γραμμές περιέχει M χαρακτήρες που αντιπροσωπεύουν τον πίνακα. Κάθε χαρακτήρας μπορεί να είναι "." (κουκκίδα), που αντιπροσωπεύει ένα κενό διάστημα ή ένα πεζό γράμμα του αγγλικού αλφαβήτου, που αντιπροσωπεύει ένα μέρος του σχήματος. Διαφορετικά γράμματα αντιπροσωπεύουν διαφορετικά χρώματα και τα μέρη του ίδιου σχήματος έχουν το ίδιο χρώμα.

Έξοδος

Πρέπει να τυπώσετε ακριβώς πέντε σειρές. Η i-οστή γραμμή πρέπει να περιέχει τον αριθμό των εμφανίσεων του i-οστού σχήματος στο παιχνίδι του Tetris.

Βαθμολογία

Σε δοκιμαστικές περιπτώσεις αξίας 20% των συνολικών πόντων, θα εμφανίζεται μόνο το πρώτο σχήμα.
Σε περιπτώσεις δοκιμής αξίας επιπλέον 20% των συνολικών πόντων, μόνο τα δύο πρώτα σχήματα θα εμφανίζονται.
Σε δοκιμαστικές περιπτώσεις αξίας επιπλέον 20% των συνολικών πόντων, θα εμφανίζονται μόνο τα τρία πρώτα σχήματα .
Σε περιπτώσεις δοκιμής αξίας επιπλέον 20% των συνολικών πόντων, μόνο τα πρώτα τέσσερα σχήματα θα εμφανίζομαι.

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

input

4 5
aaaa.
.bb..
.bbxx
...xx

output

2
1
0
0
0

input

4 5
.aab.
aabb.
.cbaa
cccaa

output

1
0
1
1
1

input

5 7
.c.....
ccdddd.
caabbcc
aabbacc
...aaa.

output

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

Η ακόλουθη εικόνα απεικονίζει τον πίνακα Tetris όταν ο Ivica επέστρεψε στον υπολογιστή του.

coci17a2-figure-1.svg


Comments

There are no comments at the moment.