4667: The Wall (medium)

内存限制:256 MB 时间限制:2 S
题面:传统 评测方式:文本比较 上传者:
提交:3 通过:3

题目描述

奶牛海蒂惊呆了:北墙有裂缝了?僵尸聚集在外面,成群结队,准备攻击?这绝不能发生!她迅速拿出她的HC2(疯狂结构手册),寻找正确的章节:

如何筑墙:

拿一组砖。

选择一个可能的墙壁设计。计算可能的设计的数量留给读者作为练习。

根据所选择的设计,将砖一块一块地放在上面。

这似乎很简单。但海蒂是一头编码牛,不是一只构建牛。她的思想总是回到2b点。尽管僵尸袭击的危险迫在眉睫,她想知道她可以用n块砖建造多少堵墙。

墙是简单版本中定义的一组墙段。有多少种不同的墙可以建造,使墙由至少1个,最多n个砖?两堵墙是不同的,如果有一列c和一列r,使得一堵墙在这个位置上有砖块,而另一堵墙没有。

除了n,你将得到C,墙的宽度(在简单版本中定义)。返回对106+3取模的不同墙壁的数量。



输入格式

第一行包含两个用空格分隔的整数n和C, 1≤n≤500000,1≤C≤200000。



输出格式

打印出海蒂可以建造的不同墙壁的数量,对106+3取模。

输入样例 复制

5 1

输出样例 复制

5

数据范围与提示

备注
数字 ( 1e6 + 3 ) 是一个质数。
在第二个示例中,五面墙是:
    B        B
B., .B, BB, B., 和 .B

在第三个示例中,这九面墙包括第二个示例中的五面墙,以及额外的四面墙:
B    B
B    B  B        B
B., .B, BB, 和 BB