COCI-13 (2013) - Γύρος #3 - 5 (Parovi)

View as PDF

Submit solution

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

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

Η απόσταση μεταξύ δύο ακεραίων ορίζεται ως το άθροισμα του απόλυτου αποτελέσματος της αφαίρεσης των ψηφίων τους. Για παράδειγμα, η απόσταση μεταξύ των αριθμών 4561 και 3278 είναι |4 - 3| + |5 - 2| + |6 - 7| + |1 - 8| = 12. Αν ένας από τους αριθμούς αποτελείται από λιγότερα ψηφία από τον άλλο, τον συμπληρώνουμε με μηδενικά. Επομένως, η απόσταση μεταξύ των αριθμών 32 και 5678 είναι |0 - 5| + |0 - 6| + |3 - 7| + |2 - 8| = 21.

Σας δίνονται δύο ακέραιοι A και B. Υπολογίστε το άθροισμα των αποστάσεων μεταξύ κάθε ζεύγους αριθμών που ανήκουν στο διάστημα [A,\;B]!

Είσοδος

Η πρώτη και μοναδική γραμμή εισόδου περιέχει τους ακέραιους αριθμούς A, B\;(1 \leq A \leq B \leq 10^{50\,000}).

Έξοδος

Η πρώτη και μοναδική γραμμή εξόδου πρέπει να περιέχει τον απαιτούμενο αριθμό από το κείμενο. Δεδομένου ότι ο αριθμός θα μπορούσε να είναι εξαιρετικά μεγάλος, τυπώστε τον αριθμό modulo (το υπόλοιπο της διαίρεσης) 1\,000\,000\,007.

Βαθμολογία

Σε περιπτώσεις δοκιμής αξίας 20% των συνολικών πόντων, το A και το B δεν θα υπερβαίνουν τους 10\,000.

Σε περιπτώσεις δοκιμής αξίας 40% των συνολικών πόντων, το A και το B δεν θα υπερβαίνουν τους 10^{100}.

Παραδείγματα

input

1 5

output

40

input

288 291

output

76
Επεξήγηση του 2ου παραδείγματος:

Οι αποστάσεις είναι, αντίστοιχα, (288,\;289) = 1, (288,\;290) = 9, (288,\;291) = 8, (289,\;290) = 10, (289,\;291) = 9, (290, 291) = 1. Καθένα από αυτά μετράει δύο φορές, που είναι συνολικά 2 \times (1 + 9 + 8 + 10 + 9 +1) = 76.


input

1000000 10000000

output

581093400

Comments

There are no comments at the moment.