【HNOI2010】【BZOJ2004】Bus 公交线路

题目描述 Description
小 Z 所在的城市有 N 个公交车站,排列在一条长为 N-1 公里的直线上,从左到右依次编号为1到 N,相邻公交车站间的距离均为 1公里。
作为公交车线路的规划者,小 Z调查了市民的需求,决定按以下规则设计线路:
1. 设共有K辆公交车,则 1到K 号车站作为始发站,N-K+1到 N号车站作为终点站。
2. 每个车站必须被一辆且仅一辆公交车经停(始发站和终点站也算被经停)。
3. 公交车只能从编号较小的车站驶向编号较大的车站。
4. 一辆公交车经停的相邻两个车站间的距离不得超过P 公里。
注意“经停”是指经过并停车,因经过不一定会停车,故经停与经过是两个不同的概念。
在最终确定线路之前,小 Z 想知道有多少种满足要求的方案。由于答案可能很大,你只需求出答案对30031取模的结果。

输入描述 Input Description
输入文件只有一行,其中包含用空格隔开的三个正整数N, K,
P,分别表示公交车站数,公交车数,一辆公交车经停的相邻两个车站间的最大距离。

输出描述 Output Description
仅包含一个整数,表示满足要求的方案数对30031取模的结果。

Sample Input
样例一:10 3 3
样例二:5 2 3
样例三:10 2 4
Sample Output
1
3
81

数据范围及提示 Data Size & Hint
输入的数据保证40%的数据满足N≤1000。100%的数据满足1<N<10^9,1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值