Σε συνέχεια προηγούμενης ενότητας ερευνούμε τις περίεργες ερωτήσεις
που θέτουν στους υποψήφιους υπαλλήλους οι μεγάλες τεχνολογικές εταιρείες.
Ερώτηση 2: Πόσοι αριθμοί υπάρχουν μεταξύ του 0 και του 999 που έχουν ένα
τουλάχιστον τρία.
Αυτή είναι μια υπολογιστική ερώτηση αρκετά εύκολη επιπέδου δημοτικού που
αρκεί να μετρήσεις τους αριθμούς. Βέβαια σε μια συνέντευξη περιμένοντας μας
να δώσουμε μια απάντηση ίσως μας τρόμαζε και δεν τακτοποιούσαμε τις σκέψεις
μας για να απαντήσουμε. Πάμε λοιπόν να μετρήσουμε τους αριθμούς.
Ο πρώτος αριθμός είναι βέβαια το 3. Ακολουθεί το 13, το 23 κοκ το 93. Βλέπουμε
λοιπόν πως με αυτό το μοτίβο ανάμεσα στο 0 και στο 99 υπάρχουν 10 αριθμοί. Υπάρχει
όμως και άλλο ένα μοτίβο. Υπάρχουν οι αριθμοί 30, 31, 32,..39. Αυτοί οι αριθμοί
επίσης είναι 10. Στο σύνολο λοιπόν θα λέγαμε πως ανάμεσα στο 0 και στο 99 υπάρχουν
δέκα και δέκα, 20 αριθμοί. Εδώ είναι η πρώτη παγίδα. Βασικά πρέπει να σκεφτούμε πως
το 33 το μετρήσαμε δύο φορές, ήταν μέσα και στα δύο μοτίβα. Άρα οι αριθμοί είναι 19.
Ομοίως στο διάστημα 100-199 υπάρχουν 19 αριθμοί, ομοίως στο 200-299, 400-499…900-999. Επίτηδες εξαιρούμε το διάστημα 300-399 το οποίο θα το μετρήσουμε ξεχωριστά και είναι εύκολο να δούμε πως έχει και τους 100 αριθμούς που περιλαμβάνει. Επομένως συνολικά έχουμε 9 διαστήματα απο 19 αριθμους, 9*19 = 171, συν 100 αριθμούς, το σύνολο μας κάνει 271 αριθμούς. Τόσοι είναι οι αριθμοί ανάμεσα στο 0 και στο 999 που περιέχουν τουλάχιστον ένα τριάρι.
Β’ Τρόπος. Ο δεύτερος τρόπος είναι με πιθανότητες λυκείου. Αρχικά θα δούμε πόσοι είναι οι αριθμοί που δεν περιέχουν το 3. Επειδή είναι τριψήφιοι στην πρώτη θέση μπορούν να έχουν οποιοδήποτε ψηφίο εκτός απο το 3, δηλαδή τα άλλα 9 ψηφία. Ομοίως στην δεύτερη και στην τρίτη θέση. Άρα το άθροισμα τους είναι 9*9*9 = 729 αριθμοί από τους 1000 δεν έχουν τριάρι.
Άρα οι υπόλοιποι έχουν. Πόσοι είναι οι υπόλοιποι; Είναι 1000-729 = 271 και πάλι.
Για τους λάτρεις του ΑΕΠΠ παρακάτω βρείτε και μια λύση γραμμένη σε ΓΛΩΣΣΑ που μετράει πόσοι αριθμοί περιέχον τριάρια και τους τυπώνει.
ΠΡΟΓΡΑΜΜΑ ΤΡΙΑΡΙΑ
ΜΕΤΑΒΛΗΤΕΣ
ΑΚΕΡΑΙΕΣ: I, COUNT, ΥΠ, DIGIT
ΛΟΓΙΚΕΣ: FLAG
ΑΡΧΗ
COUNT <- 0
ΓΙΑ I ΑΠΟ 1 ΜΕΧΡΙ 999
FLAG <- ΑΛΗΘΗΣ
ΥΠ <- I
ΟΣΟ FLAG = ΑΛΗΘΗΣ ΚΑΙ ΥΠ <> 0 ΕΠΑΝΑΛΑΒΕ
DIGIT <- ΥΠ mod 10
ΥΠ <- ΥΠ div 10
ΑΝ DIGIT = 3 ΤΟΤΕ
COUNT <- COUNT + 1
FLAG <- ΨΕΥΔΗΣ
ΓΡΑΨΕ I
ΤΕΛΟΣ_ΑΝ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
ΓΡΑΨΕ COUNT
ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ