UOJ Logo Universal Online Judge

UOJ

附件下载 统计

59 日,跳蚤王国建好了第 509 号迷宫。迷宫为一个 (n+1)×(n+1) 的正方形点阵,点的坐标为 (i,j) (0i,jn)

因为这个迷宫是 59 日建造的,n509 的倍数。

迷宫除了第 0 行的每一行都有一个有陷阱的点。求出从 (0,0)(n,n) 的不经过陷阱的,每一步均为往右(也即坐标增加 (1,0))或者往上(也即坐标增加 (0,1))的路径数。同样的,由于这是第 509 号迷宫,答案对 509 取模。

输入格式

第一行一个整数 n 表示迷宫的大小。第二行为 n 个整数 ai (0ain),表示第 i 行的陷阱位置。

输出格式

一行一个整数,表示答案对 509 取模后的余数。

样例零

input

2
0 1

output

2

explanation

两个陷阱的位置为 (1,0),(2,1),共有两条可能的路径 (0,0)(0,1)(0,2)(1,2)(2,2)(0,0)(0,1)(1,1)(1,2)(2,2)。 本样例不满足 509n,仅用于说明题意,不会放入测试中。

样例一

见下发文件。本样例满足子任务 1 的限制。

样例二

见下发文件。本样例满足子任务 4 的限制。

样例三

见下发文件。本样例满足子任务 5 的限制。

样例四

见下发文件。本样例满足子任务 6 的限制。

限制与约定

本题采用捆绑测试。

  • Subtask 1(7 points):n=509
  • Subtask 2(8 points):an=n
  • Subtask 3(10 points):ai=1 (2in)
  • Subtask 4(21 points):ai=i509 (509in)
  • Subtask 5(25 points):n=152700
  • Subtask 6(29 points):无特殊限制。

对于 100% 的数据,1n2545000ain,除样例零外,n509 的倍数。

时间限制:3s

空间限制:512MB