Professor JOI is a leading expert on the study of the history of IOI Kingdom. When he was surveying an old temple in IOI Kingdom, he found ruins where the stone pillars were constructed. He also found an old document which was supposedly written by ancient people in IOI Kingdom. The document contains descriptions on the stone pillars. More precisely, the following is written in the document.
- Just after the construction, there were stone pillars, numbered from to .
- Just after the construction, for each , there were exactly two stone pillars of height .
- The earthquake occurred times. After each earthquake, some of the stone pillars collapsed and their heights decreased by . However, other stone pillars were protected by ancient people. These stone pillars did not collapse, and their heights remained the same.
- When an earthquake occurred, for each , exactly one stone pillar of height was protected by ancient people. If there were more than one stone pillar of height when an earthquake occurred, the stone pillar of height with largest number was protected. In other words, if the height of the stone pillar was before an earthquake, then the stone pillar was protected if and only if and for every .
- After the earthquakes occurred, stone pillars remained (i.e. there were exactly stone pillars with height at least ).
Professor JOI thinks it would be a great discovery if he can recover the heights of the stone pillars when they were constructed. He surveyed the place where the stone pillars were constructed in more detail. He found that, after the earthquakes occurred, the indices of the remaining stone pillars were .
Professor JOI wants to know the number of possible combinations of the heights of the stone pillars when they were constructed. Since you are a pupil of Professor JOI, you are asked to write a program which counts this number.
Write a program which, given the indices of the remaining stone pillars after the earthquakes occurred, calculates the number of possible combinations of the heights of the stone pillars when they were constructed, modulo .
Input Specification
Output Specification
Write one line to the standard output. Output the remainder when the answer is divided by .
Constraints
.
.
.
Subtasks
- (6 points) .
- (52 points) .
- (42 points) No additional constraints.
Sample Input 1
3
3 4 6
Sample Output 1
5
Explanation for Sample 1
For example, assume that the heights of the stone pillars were 2, 2, 3, 3, 1, 1
, from the stone pillar . Since
there were exactly two stone pillars of height for each , it agrees with the description in the old
document.
- When the first earthquake occurred, the stone pillars , , were protected by ancient people. After the
first earthquake, the heights of the stone pillars became
1, 2, 2, 3, 0, 1
. - When the second earthquake occurred, the stone pillars were protected by ancient people. After
the second earthquake, the heights of the stone pillars became
0, 1, 2, 3, 0, 1
. - When the third earthquake occurred, the stone pillars were protected by ancient people. After the
third earthquake, the heights of the stone pillars became
0, 0, 2, 3, 0, 1
.
After the three earthquakes, the stone pillars remained. It coincides with the information given in the input.
In addition to the above, there are four possible combinations of the heights of the stone pillars 2, 3, 2, 3, 1, 1
,
2, 3, 3, 2, 1, 1
, 3, 2, 2, 3, 1, 1
, 3, 2, 3, 2, 1, 1
.
Therefore, there are five possible combinations of the heights of the six stone pillars which agree with the description in the old document and the information given in the input.
Sample Input 2
1
1
Sample Output 2
0
Explanation for Sample 2
In this sample input, is the only combination of the heights of the stone pillars which agrees with the description in the old document. After the first earthquake, the heights of the stone pillars became . Therefore, there is no possible combination of the heights of the stone pillars which agrees with the description in the old document and the information given in the input.
Sample Input 3
10
5 8 9 13 15 16 17 18 19 20
Sample Output 3
147003663
Explanation for Sample 3
There are possible combinations of the heights of the stone pillars, when they were constructed. When is divided by , the remainder is . Thus, output .
Comments
why is there so much reading