COCI-20 (2020) - Γύρος #1 - 1 (Patkice)

View as PDF

Submit solution

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

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

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

Δεδομένου ότι οι πάπιες είναι έμπειροι εξερευνητές ωκεανών, πριν από το ταξίδι θα ελέγξουν έναν χάρτη με τα ωκεάνια ρεύματα. Στο χάρτη, το νησί όπου ζουν οι πάπιες σημειώνεται με ένα γράμμα \('ο'\). Οι πάπιες μπορούν να ξεκινήσουν το ταξίδι τους προς οποιαδήποτε από τις τέσσερις κατευθύνσεις: βόρεια – N, ανατολικά – E, δυτικά W και νότια – S.

Τα ωκεάνια ρεύματα σε αυτές τις θάλασσες κινούνται προς μία από τις τέσσερις κατευθύνσεις και σημειώνονται στον χάρτη ως εξής: δύση-ανατολή '<', ανατολή-δύση '>', βορράς-νότος 'v' και νότος-βορράς '^'. Όταν οι πάπιες βρίσκονται σε ένα τμήμα με συγκεκριμένο ρεύμα, θα μετακινήσουν ένα τμήμα προς την κατεύθυνση του ρεύματος. Τα ωκεάνια ρεύματα σε αυτές τις θάλασσες είναι ιδιαίτερα, καθώς δεν οδηγούν ποτέ έξω από τον χάρτη και δεν σχηματίζουν δίνες (μέρη όπου οι πάπιες θα κινούνταν κυκλικά αν ακολουθούσαν το ρεύμα).

Η ήρεμη θάλασσα σημειώνεται με μια τελεία '.'. Εάν τα ρεύματα φέρουν τις πάπιες σε ένα τμήμα με ήρεμη θάλασσα ή πίσω στο αρχικό νησί, δεν θα μπορούν να συνεχίσουν το ταξίδι. Το νησί που θέλουν να επισκεφτούν οι πάπιες σημειώνεται με ένα γράμμα 'x'.

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

Είσοδος

Η πρώτη γραμμή περιέχει ακέραιους αριθμούς r και s\;(3 \le r, s \le 100), τον αριθμό των γραμμών και των στηλών του χάρτη.

Κάθε μία από τις επόμενες r γραμμές περιέχει s χαρακτήρες από το σύνολο 'o<>v^.x', που αντιπροσωπεύουν τον χάρτη των ωκεάνιων ρευμάτων. Θα υπάρχει πάντα ακριβώς ένας χαρακτήρας 'o' και ακριβώς ένας χαρακτήρας 'x' στον χάρτη. Ο χαρακτήρας 'o' δεν θα βρίσκεται ποτέ στην πρώτη ή την τελευταία γραμμή ή στήλη.

Έξοδος

Αν οι πάπιες δεν μπορούν να φτάσουν στο άλλο νησί, τυπώστε :(.

Διαφορετικά, τυπώστε :) στην πρώτη γραμμή. Στη δεύτερη γραμμή, εκτυπώστε την κατεύθυνση έναρξης (N για βόρεια, E για ανατολικά, W για δυτικά ή Ν για νότια).

Βαθμολογία

Σε δοκιμαστικές περιπτώσεις αξίας 30 πόντων, η έγκυρη κατεύθυνση εκκίνησης θα είναι μοναδική - εάν υπάρχει.

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

input

..>>>v
.o^..v
.v.<.v
.>>^.v
.x<<<<
......

output

:)
E

input

5 5
v<<<<
>v.>^
v<.o.
>>v>v
..>>x

output

:)
S
Επεξήγηση των 2 πρώτων παραδειγμάτων:

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

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


input

3 3
x>.
.o^
^<.

output

:(

Comments

There are no comments at the moment.