UVa-10180 - Rope Crisis in Ropeland!

View as PDF

Submit solution

Points: 30 (partial)
Time limit: 1.0s
Memory limit: 16M

Author:
Problem type
Allowed languages
C, C++, Java, Pascal, Python
Rope Crisis in Ropeland!

Αυτή είναι μια ιστορία της Ropeland όπου η διελκυστίνδα είναι ένα πολύ δημοφιλές παιχνίδι (όπως το κρίκετ στο Μπαγκλαντές). Ίσως γνωρίζετε τη διελκυστίνδα: δύο ομάδες παικτών κρατούν τις δύο άκρες ενός σχοινιού. Όταν δίνεται ένα προκαθορισμένο σήμα αρχίζουν να τραβούν το σχοινί. Η ομάδα που μπορεί να αρπάξει το σχοινί από την άλλη ομάδα ανακηρύσσεται νικήτρια. Σήμερα είναι μια πολύ χαρμόσυνη μέρα στη Ropeland καθώς έχουν λάβει στάτους διελκυστίνδας (κάτι όπως το στάτους δοκιμής/test status του κρίκετ). Έτσι, οι κάτοικοι της Ropeland είναι στο δρόμο και είναι πρόθυμοι να ασχοληθούν με τη διελκυστίνδα. Αλλά τα καταστήματα στην πόλη δεν παρέχουν αρκετό σχοινί και έτσι έχει τώρα ξεκινήσει κρίση σχοινιού. Ο βασιλιάς της χώρας κηρύσσει νέο κανόνα που δεν θα επιτρέπει σε δύο ομάδες να αγοράζουν περισσότερα σχοινιά από αυτά που χρειάζονται.

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

uva10180-figure.svg
Είσοδος

Η πρώτη γραμμή του αρχείου εισόδου περιέχει έναν ακέραιο αριθμό N, ο οποίος υποδεικνύει πόσα σύνολα εισόδου υπάρχουν. Ακολουθούν \(Ν\) γραμμές εισόδου.

Κάθε γραμμή περιέχει πέντε αριθμούς X_1, Y_1, X_2, Y_2 και R (> 0) όπου (X_1, Y_1) και (X_2, Y_2) είναι οι συντεταγμένες των δύο ομάδων και R είναι η ακτίνα της κολόνας. Η συντεταγμένη του κέντρου της κολόνας είναι πάντα το σημείο αναφοράς (origin). Μπορείτε επίσης να υποθέσετε ότι καμία από τις συντεταγμένες δεν θα είναι μέσα στον κύκλο. Όλοι οι αριθμοί εισόδου εκτός από το N είναι αριθμοί κινητής υποδιαστολής και καμία από τις απόλυτες τιμές τους δεν είναι μεγαλύτερη από 10000.

Έξοδος

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

Παράδειγμα

input

2
1 1 -1 -1 1
1 1 -1 1 1

output

3.571
2.000

Comments

There are no comments at the moment.