CCC-04 (2004) - J1 (Squares)

View as PDF

Submit solution

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

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

Στην Gigi αρέσει να παίζει με τετράγωνα. Έχει μια συλλογή από τετράγωνα πλακάκια ίσου μεγέθους. Η Gigi θέλει να τακτοποιήσει μερικά ή όλα τα πλακάκια της σε ένα τραπέζι για να σχηματίσουν ένα συμπαγές τετράγωνο. Ποιο είναι το μήκος πλευράς του μεγαλύτερου δυνατού τετραγώνου που μπορεί να χτίσει η Gigi;

Για παράδειγμα, όταν η Gigi έχει 9 πλακάκια μπορεί να τα χρησιμοποιήσει όλα για να φτιάξει ένα τετράγωνο με μήκος πλευράς 3. Αλλά όταν έχει μόνο 8 πλακάκια, το μεγαλύτερο τετράγωνο που μπορεί να φτιάξει έχει μήκος πλευράς 2.

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

Υπάρχουν πολλές διαφορετικές μέθοδοι που μπορεί να χρησιμοποιήσει το πρόγραμμά σας για να βρει την απάντηση. Μπορείτε να χρησιμοποιήσετε οποιαδήποτε μέθοδο. Για παράδειγμα, εδώ είναι μια μέθοδος. Πρώτα, ελέγξτε αν υπάρχουν αρκετά πλακίδια για να χτίσετε ένα τετράγωνο μήκους πλευράς 1. Εάν υπάρχουν αρκετά πλακίδια, συνεχίστε για να ελέγξετε τα μήκη πλευρών 2,\,3,\,3 κ.λπ., μέχρι το πρόγραμμά σας να βρει πολύ μεγάλο μήκος.

Παράδειγμα

input

9

output

3

input

8

output

2

input

7535

output

86

Comments

There are no comments at the moment.