CF - 474 - D. Flowers(dp)

题意:一个兔子要吃红萝卜和白萝卜(排成一排),但是吃白萝卜时必须吃连续的 k 个,t 个询问(1 ≤ t, k ≤ 10^5),每个询问为a, b (1 ≤ ai ≤ bi ≤ 10^5),问长度为 a 到长度为 b 的区间有几种符合这只兔子吃法的排列有多少种。。

题目链接:http://codeforces.com/problemset/problem/474/D

——>>状态:dp[i] 表示前 i 个萝卜符合要求的排列总数

状态转移方程:dp[i] = (dp[i - 1] + dp[i - k]) % MOD;

加上预处理OK。。

(输入开挂46MS,比不开挂的 78MS 短。。)

#include <cstdio>

const int MOD = 1000000007;
const int MAXN = 100000;

int t, k;
int dp[MAXN + 10], sum[MAXN + 10];

void Init()
{
    dp[0] = 1;
    sum[0] = 0;
    for (int i = 1; i <= MAXN; ++i)
    {
        dp[i] = dp[i - 1];
        if (i >= k)
        {
            dp[i] = (dp[i] + dp[i - k]) % MOD;
        }
        sum[i] = (sum[i - 1] + dp[i]) % MOD;
    }
}

int ReadInt()
{
    int ret = 0;
    char ch;

    while ((ch = getchar()) && ch >= '0' && ch <= '9')
    {
        ret = ret * 10 + ch - '0';
    }

    return ret;
}

void Solve()
{
    int a, b;

    getchar();
    while (t--)
    {
//        scanf("%d%d", &a, &b);
        a = ReadInt();
        b = ReadInt();
        printf("%d\n", ((sum[b] - sum[a - 1]) % MOD + MOD) % MOD);
    }
}

int main()
{
    while (scanf("%d%d", &t, &k) == 2)
    {
        Init();
        Solve();
    }

    return 0;
}


Node.js 的官方发布页面提供了各个版本的下载链接以及对应的校验和信息。对于 Node.js v14.17.0 版本,可以访问其官方镜像站点获取具体的文件资源和校验和。 ### 下载地址 Node.js v14.17.0 的二进制文件和其他相关资源可以从以下 URL 获取: - **Windows Installer**: https://nodejs.org/dist/v14.17.0/node-v14.17.0-x64.msi - **macOS Installer**: https://nodejs.org/dist/v14.17.0/node-v14.17.0.pkg - **Linux Binaries (x64)**: https://nodejs.org/dist/v14.17.0/node-v14.17.0-linux-x64.tar.xz 此外,还可以找到其他平台的相关文件,例如 ARM 架构支持等。 ### 校验和信息 Node.js 提供了一个名为 `SHASUMS256.txt` 的文件来验证下载文件的真实性与完整性。该文件包含了所有发布的压缩包及其对应的安全哈希值(SHA-256)。可以通过以下链接下载并核对: - **SHASUMS256.txt**: https://nodejs.org/dist/v14.17.0/SHASUMS256.txt 以下是部分校验和示例(仅作为说明用途,请以实际下载为准): ```plaintext eacf3b9aaf2f8c2d0daaafebfedfaabcbaacdbebdffdfdcdbcaebabcfdebcddcdcbcafecbbcab node-v14.17.0-darwin-x64.tar.gz ... ``` 如果需要单独提取某个特定文件(如 `node.lib`),可以根据目标操作系统选择合适的发行版解压后查找相关内容。通常情况下,`node.lib` 文件位于 Windows 平台下的开发工具链目录中[^1]。 为了进一步确认文件一致性,在命令行执行如下操作完成 SHA-256 验证过程: ```bash shasum -a 256 node-v14.17.0-linux-x64.tar.xz ``` 此脚本会计算本地文件散列并与远程服务器提供的一致性对比。 ### 注意事项 当涉及敏感环境部署时务必仔细检查这些数值匹配情况以防篡改风险发生。同时建议始终从可信源处取得最新稳定版本软件产品以便享受更长久的支持周期和服务保障措施[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值