COCI-07 (2007) - Γύρος #1 - 2 (Peg)

View as PDF

Submit solution

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

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

Στο διάσημο παιχνίδι λογικής Peg, τα κομμάτια πηδούν πάνω από άλλα κομμάτια για να τα αφαιρέσουν από το παιχνίδι μέχρι να μείνει ένα μόνο κομμάτι.
Εδώ είναι η αρχική διάταξη του πίνακα:

     ooo
     ooo
   ooooooo
   ooo.ooo
   ooooooo
     ooo
     ooo

Το πεζό γράμμα 'o' αντιπροσωπεύει ένα κομμάτι, ενώ ο χαρακτήρας '.' είναι ένα άδειο τετράγωνο. Με μια κίνηση, ένας παίκτης μπορεί να επιλέξει ένα κομμάτι και μία από τις τέσσερις κύριες κατευθύνσεις (πάνω, κάτω, αριστερά, δεξιά), εάν υπάρχει άλλο κομμάτι προς αυτή την κατεύθυνση και ένα άδειο τετράγωνο πίσω του. Το επιλεγμένο κομμάτι πηδάει πάνω από το άλλο κομμάτι και εγκαθίσταται στο άδειο τετράγωνο πίσω από αυτό, ενώ το κομμάτι που αναπηδάται αφαιρείται από το παιχνίδι.
Γράψτε ένα πρόγραμμα που να υπολογίζει τον αριθμό των επιτρεπόμενων κινήσεων δεδομένης της κατάστασης του ταμπλό.

Είσοδος

Ο πίνακας αντιπροσωπεύεται από επτά γραμμές που περιέχουν επτά χαρακτήρες η καθεμία. Οι δύο πρώτοι και οι δύο τελευταίοι χαρακτήρες στις δύο πρώτες και στις δύο τελευταίες γραμμές είναι πάντα κενά και όλοι οι υπόλοιποι χαρακτήρες είναι είτε "o" (πεζό γράμμα) ή "." (χαρακτήρας τελείας).

Έξοδος

Τυπώστε τον αριθμό των επιτρεπόμενων κινήσεων.

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

input

  ooo  
  ooo  
ooooooo
ooo.ooo
ooooooo
  ooo  
  ooo

output

4

input

  ooo  
  ooo  
..ooo..
oo...oo
..ooo..
  ooo  
  ooo

output

12

Comments

There are no comments at the moment.