COCI-09 (2009) - Γύρος #5 - 6 (Chuck)

View as PDF

Submit solution

Points: 45 (partial)
Time limit: 1.0s
Memory limit: 32M

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

Σας δίνεται ένας πίνακας R γραμμών και C στηλών. Όλα τα στοιχεία του πίνακα είναι κατά την απόλυτη τιμή τους μικρότερα ή ίσα με 10^4.
Μπορείτε να εκτελέσετε τις ακόλουθες λειτουργίες:

Λειτουργία Σημειολογία Παράδειγμα
Περιστρέψτε την i-οστή σειρά των στοιχείων
k του πίνακα προς τα δεξιά
rotR\;i\;k rotR\;3\;1
Περιστρέψτε την j-οστή στήλη των στοιχείων k
του πίνακα προς τα κάτω
rotS\;j\;k rotS\;3\;2
Πολλαπλασιάστε όλα τα στοιχεία της
i-οστής σειράς με το -1, εάν και μόνο αν
κανένα από αυτά δεν είχε πολλαπλασιαστεί πριν
.
negR\;i negR\;2
Πολλαπλασιάστε όλα τα στοιχεία της
j-οστής στήλης με το -1, εάν και μόνο αν
κανένα από αυτά δεν είχε πολλαπλασιαστεί πριν.
negS\;j negS\;1

Χρησιμοποιώντας περιορισμένο αριθμό από αυτές τις πράξεις, πρέπει να μεγιστοποιήσετε το άθροισμα όλων των στοιχείων του πίνακα.

Είσοδος

Η πρώτη γραμμή περιέχει δύο ακέραιους αριθμούς: τον αριθμό σειρών R και τον αριθμό στηλών C\;(1 \le R,\;C \le 100).
Οι επόμενες R γραμμές περιέχουν C ακέραιους η καθεμία. Όλοι οι ακέραιοι είναι κατά την απόλυτη τιμή τους μικρότεροι του 10^4.

Έξοδος

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

Βαθμολογία
  • Εάν το άθροισμα που προκύπτει δεν είναι το μέγιστο, ένα από τα στοιχεία πολλαπλασιάστηκε περισσότερες από μία φορές ή η ακολουθία των πράξεων που εκτυπώθηκαν δεν οδηγεί στο άθροισμα, απονέμονται 0 βαθμοί.
  • Διαφορετικά, ο αριθμός των πόντων εξαρτάται από τον αριθμό των λειτουργιών που χρησιμοποιήθηκαν
    • Για το T \le 5\cdot R\cdot C, λαμβάνετε το 100% των πόντων που κατανέμονται σε αυτήν την δοκιμαστική περίπτωση
    • Για 5\cdot R\cdot C< T\le 100\,000, σας απονέμεται το 50% των πόντων που κατανέμονται σε αυτήν την δοκιμαστική περίπτωση.
    • Για T > 100\,000, λαμβάνετε 0 βαθμούς για αυτήν την δοκιμαστική περίπτωση.
Παραδείγματα

input

3 4
1 -2 5 200
-8 0 -4 -10
11 4 0 100

output

345 2
rotS 2 1
negR 2

input

3 3
8 -2 7
1 0 -3
-4 -8 3

output

34 4
rotR 1 1
rotS 3 1
negR 2
negR 3

Comments

There are no comments at the moment.