最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • 晚饭吃什么?

    正文概述 陈老师   2026-01-20 15:16:11  

    题目描述

    "晚饭吃什么?" "我都行。"

    notPPnotPP 罗列了 mm 个吃饭的地点,在接下来的 nn 天中,notPPnotPP 觉得一直吃外卖会腻,于是他决定拿恰好 kk 天出来去外面吃饭。

    但连续两天都在同一个地方吃饭容易腻,于是他希望"不能连续两天都去同一个地方吃饭(外卖除外)"的规则。

    在这种情况下,请问 notPPnotPP 有多少种方案呢?因为答案可能很大,所以请将其对 109+710^9+7 取模。

    输入格式

    本题每个测试点有多组测试数据。

    第一行输入一个正整数 TT,表示有 TT 组测试样例。

    接下来对于每组样例:

    一行输入三个数字 n,m,kn,m,k,分别代表接下来 nn 天,有 mm 个吃饭的地方和分配 kk 天。

    保证单个测试点的所有测试数据的 nn 之和不超过 10610^6

    输出格式

    输出一行,表示分配方案的数量对 109+710^9+7 取模得到的结果。

    样例

    2
    3 2 3
    3 2 2
    
    2
    8
    

    提示

    样例解释

    对于第一个样例,notPPnotPP 在接下来的 33 天都去外面吃,故有两种情况:{1,2,11,2,1} 和 {2,1,22,1,2}。

    对于第二个样例,这里有所有的可行情况(其中 00 表示外卖):

    {1,2,01,2,0},{2,1,02,1,0},{1,0,11,0,1},{1,0,21,0,2},{2,0,12,0,1},{2,0,22,0,2},{0,1,20,1,2},{0,2,10,2,1}

    数据范围

    1T1051≤T≤10^51kn1061≤k≤n≤10^61m1061≤m≤10^6

    信息学奥赛网,一个优质的信息学奥赛学习资源平台!
    信息学奥赛网 » 晚饭吃什么?