腾讯算法笔试

白花问题,哪里出错了啊,调了一个多小时通过0
long int mod = 1e9 + 7;
int main() {
int n;
int k;
cin >> n;
cin >> k;
for (int i = 0; i < n; i++)
{
int a;
int b;
cin >> a >> b;
if (k>b)
{
cout << 1 << endl;
continue;
}
vector<long int> dp(b + 1,0);
for (int j = 1; j < k; j++)
dp[j] = 1;
dp[k] = 2;
for (int j = k + 1; j <= b; j++)
{
dp[j] = (dp[j - 1] + dp[j - k]) % mod;
}
long int num = 0;
for (int j = a; j <= b; j++)
{
num = (num + dp[j])%mod;
}
cout << num << endl;
}
}

#腾讯##笔试题目#
全部评论
我的过了
点赞 回复 分享
发布于 2019-09-01 23:37
为什么第二题我我没看到要取模啊?
点赞 回复 分享
发布于 2019-09-02 00:21
我的dp跟你写的差不多,也是0,我结束后才想到一个,边界有问题,k>b的时候不能直接输出1,要输出a到b的累加值
点赞 回复 分享
发布于 2019-09-01 23:44

相关推荐

02-16 01:39
南昌大学 Java
重剑Ds:感觉不太可能 后端都减飞了 根本不缺人
点赞 评论 收藏
分享
在笔试的大西瓜很矫健:校招数分不用想了,这经历和学历都不够用,大厂更别想,初筛都过不了,说点不好听的小厂数分都进不去(小厂也是假数分),要两个对口实习+3个项目(或者3+2),而且要有含金量才能补一点你的学历劣势。 建议刷实习,社招找数分,校招看运气,能入行业就行,可以运营转数分
点赞 评论 收藏
分享
评论
点赞
9
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务