COCI 2009/2010, Contest #1
Task GENIJALAC
Mirko is a genius. But the purpose of his inventions is not always obvious. His latest invention, the Shuffle-o-matic 3175, is one of those. The Shuffle-o-matic is used in a very special way. First Mirko places N paper cards, with numbers 1 to N printed on them, on the Shuffle-o-matic working surface. Then he inputs the shuffle sequence in the special input console and hits the go button. The machine than reads the paper cards and outputs the read sequence of numbers on its output tape. It than shuffles the cards according to the shuffle sequence. After that it reads the newly obtaind sequence and writes it onto a new line on its output tape. Then it procedes to shuffle the cards again according to the same shuffle sequence, scans and writes the output to the tape. The machine does this until it runs out of tape.
After experimenting with the machine Mirko decided to rest a bit on the floor. There he noticed a piece of output tape. The piece is neatly cut just before the A-th output row nad just after the B-th output row. It is also missing the first C number and the last D numbers in all rows.
He now wonders how many rows on that piece of paper have the property that all numbers in the row, that are still on the paper, are in the exact same spot they were before all the shuffling began.
Input
The first line of input contains integers N, A, B, C and D in that order (1 ≤ N ≤ 500 000, A ≤ B ≤ 1012, 0 ≤ C, D ≤ N, C + D < N).
The second line contains the shuffle sequence. The sequence is given as a permutation of numbers 1 to N. If the k-th number in the shuffle sequence is x, after each shuffle the k-th element in the resulting sequence is the x-th element in the previous sequence.
Output
In the first and only line of input print the number of rows that have the property Mirko is looking for.
Scoring
Test cases worth 40% total points have A, B, C, D, N ≤ 2000.
Sample Tests
Input4 1 5 0 1 1 3 4 2 Output2 ExplanationShuffle-o-matic outputs:1 2 3 4 1 3 4 2 1 4 2 3 1 2 3 4 1 3 4 2 1 4 2 3 1 2 3 4Mirko finds: 1 2 3 1 3 4 1 4 2 1 2 3 1 3 4The first and fourth rows are interesting to Mirko. |
Input7 3 8 1 2 2 3 1 6 4 7 5 Output0 ExplanationShuffle-o-matic outputs:1 2 3 4 5 6 7 2 3 1 6 4 7 5 3 1 2 7 6 5 4 1 2 3 5 7 4 6 2 3 1 4 5 6 7 3 1 2 6 4 7 5 1 2 3 7 6 5 4 2 3 1 5 7 4 6 3 1 2 4 5 6 7 1 2 3 4 5 6 7 |
Input6 2 11 3 0 6 3 5 4 2 1 Output1 ExplanationShuffle-o-matic outputs:1 2 3 4 5 6 6 3 5 4 2 1 1 5 2 4 3 6 6 2 3 4 5 1 1 3 5 4 2 6 6 5 2 4 3 1 1 2 3 4 5 6 6 3 5 4 2 1 1 5 2 4 3 6 6 2 3 4 5 1 1 3 5 4 2 6 6 5 2 4 3 1 1 2 3 4 5 6 |
All Submissions
Best Solutions
Point Value: 17 (partial)
Time Limit: 5.00s
Memory Limit: 32M
Added: Jul 02, 2013
Languages Allowed:
C++03, PAS, C, HASK, ASM, RUBY, PYTH2, JAVA, PHP, SCM, CAML, PERL, C#, C++11, PYTH3
Comments (Search)
It's quiet in here...