Τώρα είναι Πέμ 28 Μαρ 2024 11:37 pm

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]




Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 2 Δημοσιεύσεις ] 
Συγγραφέας Μήνυμα
ΔημοσίευσηΔημοσιεύτηκε: Πέμ 17 Νοέμ 2005 12:39 am 
Χωρίς σύνδεση
Διαχειριστής

Εγγραφή: Παρ 28 Φεβ 2003 06:10 pm
Δημοσιεύσεις: 84
Ακρόπολη

Η Ακρόπολη των Αθηνών, αποτελεί αν όχι το σημαντικότερο, ένα από τα σημαντικότερα δημιουργήματα της ανθρωπότητας. Η κατασκευή της Ακρόπολης από τη σύλληψη, τη σχεδίαση, τη μελέτη, το κτίσιμο και τη δημιουργία των αιώνιων γλυπτών της αποκαλύπτουν το μεγαλείο του Ελληνικού πολιτισμού.

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

Κατά η δημιουργία των γλυπτών της μετώπης του Παρθενώνα, μερικά ξεχωριστά κομμάτια πεντελικού μαρμάρου έπρεπε να μεταφερθούν άμεσα και σε συγκεκριμένη σειρά. Τα κομμάτια αυτά ήταν μικρά και πρακτικά μικρού βάρους (ενδεικτικό βάρος 1).

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

Αρχεία Εισόδου

Τα αρχεία εισόδου με όνομα acropolis.in είναι αρχεία κειμένου με την παρακάτω δομή: Η πρώτη γραμμή έχει έναν ακέραιο αριθμό N, 1<N<1000 που εκφράζει τον αριθμό των φορτίων που πρέπει να μεταφερθούν. Οι επόμενες Ν γραμμές (2, 3, ..., Ν+1) περιέχουν οι κάθε μία έναν ακέραιο αριθμό Β, 1 <= Β <= 9000. Τα φορτία με Β=1 πρέπει να μεταφερθούν στη σειρά που εμφανίζονται.

Αρχεία Εξόδου

Τα αρχεία εξόδου με όνομα acropolis.out είναι αρχεία κειμένου με την παρακάτω δομή: Έχουν ακριβώς N γραμμές σε κάθε μία από τις οποίες υπάρχει ο αριθμός που αντιστοιχεί στη σειρά μεταφοράς των φορτίων και εμφανίζει το βάρος του φορτίου που πρέπει να μεταφερθεί.

1ο Παράδειγμα...

Αρχείο Εισόδου
Παράθεση:
10
1740
532
9000
1
8500
4000
5000
2120
777
8999

Αρχείο Εξόδου
Παράθεση:
532
777
1740
1
2120
4000
5000
8500
8999
9000

2ο Παράδειγμα...

Αρχείο Εισόδου
Παράθεση:
9
7791
1
1
1
1
1
1
1
614

Αρχείο Εξόδου
Παράθεση:
614
1
1
1
1
1
1
1
7791

Απαντήσεις μπορούν να δημοσιευθούν από την 1η Ιανουαρίου 2006, όταν θα έχει εκπνεύσει η προθεσμία υποβολής απαντήσεων στο διαγωνισμό.


Τελευταία επεξεργασία από SpiN και Τετ 08 Φεβ 2006 05:15 pm, έχει επεξεργασθεί 1 φορά/ες συνολικά

Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
 Θέμα δημοσίευσης:
ΔημοσίευσηΔημοσιεύτηκε: Σάβ 04 Φεβ 2006 04:06 pm 
Χωρίς σύνδεση

Εγγραφή: Πέμ 22 Απρ 2004 11:16 am
Δημοσιεύσεις: 60
Τοποθεσία: Θεσσαλονίκη
Το επόμενο πρόγραμμα, αποτελεί λύση από το μαθητή Χρήστο Μάνιο.
Syntax: [ Download ] [ Hide ]
ΠΡΟΓΡΑΜΜΑ Ακρόπολη
ΣΤΑΘΕΡΕΣ
  L=1000
ΜΕΤΑΒΛΗΤΕΣ
  ΑΚΕΡΑΙΕΣ: i,j,Ν,Β[L],temp,weight[L]
  ΛΟΓΙΚΕΣ:  shorted
ΑΡΧΗ
  ΔΙΑΒΑΣΕ Ν
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΔΙΑΒΑΣΕ Β[i]
    weight[i] <-- Β[i]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  i <-- 2
  shorted <-- ΨΕΥΔΗΣ
  ΟΣΟ i<=Ν ΚΑΙ ΟΧΙ shorted ΕΠΑΝΑΛΑΒΕ
    shorted <-- ΑΛΗΘΗΣ
    ΓΙΑ j ΑΠΟ Ν ΜΕΧΡΙ i ΜΕ ΒΗΜΑ -1
      ΑΝ Β[j-1] > Β[j] ΤΟΤΕ
        temp <-- Β[j]
        Β[j] <-- Β[j-1]
        Β[j-1] <-- temp
        shorted <-- ΨΕΥΔΗΣ
      ΤΕΛΟΣ_ΑΝ
    ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
    i <-- i+1
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  κ <-- 1
  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ ν
    ΑΝ Β[i] <> 1 ΤΟΤΕ
      ΟΣΟ weight[κ] = 1 ΕΠΑΝΑΛΑΒΕ
        κ <-- κ + 1
      ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ
      weight[κ] <-- Β[i]
      κ <-- κ + 1
    ΤΕΛΟΣ_ΑΝ
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

  ΓΙΑ i ΑΠΟ 1 ΜΕΧΡΙ Ν
    ΓΡΑΨΕ weight[i]
  ΤΕΛΟΣ_ΕΠΑΝΑΛΗΨΗΣ

ΤΕΛΟΣ_ΠΡΟΓΡΑΜΜΑΤΟΣ                                
 

_________________
Φρειδερίκος Κώστας
FreiderikosK@hotmail.com


Κορυφή
 Προφίλ  
Απάντηση με παράθεση  
Τελευταίες δημοσιεύσεις:  Ταξινόμηση ανά  
Δημιουργία νέου θέματος Απαντήστε στο θέμα  [ 2 Δημοσιεύσεις ] 

Όλοι οι χρόνοι είναι UTC + 2 ώρες [ DST ]


Μέλη σε σύνδεση

Μέλη σε αυτή την Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 3 επισκέπτες


Δεν μπορείτε να δημοσιεύετε νέα θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να απαντάτε σε θέματα σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επεξεργάζεστε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να διαγράφετε τις δημοσιεύσεις σας σε αυτή τη Δ. Συζήτηση
Δεν μπορείτε να επισυνάπτετε αρχεία σε αυτή τη Δ. Συζήτηση

Αναζήτηση για:
Μετάβαση σε:  
cron
Προβολές: