CF1877C.Joyboard

普及-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Chaneka 是一名游戏玩家,她发明了一种新的游戏手柄,名为 joyboard。有趣的是,她发明的 joyboard 只能用来玩一种游戏。

joyboard 上有一个屏幕,包含 n+1n+1 个槽位,从左到右编号为 11 到 n+1n+1。这 n+1n+1 个槽位将被填入一个非负整数数组 [a1,a2,a3,…,an+1][a_1,a_2,a_3,\ldots,a_{n+1}]。作为玩家的 Chaneka 必须为 an+1a_{n+1} 赋值一个 00 到 mm(包含 00 和 mm)之间的整数。然后,对于每个 ii 从 nn 到 11,aia_i 的值等于其右侧相邻值 ai+1a_{i+1} 除以 ii 的余数。换句话说,ai=ai+1 mod ia_i = a_{i + 1} \bmod i。

Chaneka 希望在所有槽位都被赋值后,整个屏幕上恰好有 kk 个不同的值。请问有多少种不同的方式可以为槽位 n+1n+1 赋值非负整数?

输入格式

每个测试点包含多组测试数据。第一行包含一个整数 tt(1≤t≤2⋅1041 \leq t \leq 2\cdot10^4),表示测试用例的数量。接下来的每组测试用例描述如下。

每组测试用例仅一行,包含三个整数 nn、mm 和 kk(1≤n≤1091 \leq n \leq 10^9,0≤m≤1090 \leq m \leq 10^9,1≤k≤n+11 \leq k \leq n+1),分别表示有 n+1n+1 个槽位,槽位 n+1n+1 上赋的整数不能大于 mm,并且最终屏幕上恰好有 kk 个不同的值。

输出格式

对于每组测试用例,输出一行一个整数,表示有多少种不同的方式可以为槽位 n+1n+1 赋值非负整数。

输入输出样例

  • 输入#1

    4
    4 6 3
    2 0 1
    265 265 265
    3 10 2

    输出#1

    2
    1
    0
    5

说明/提示

在第一个测试用例中,Chaneka 有 22 种可能的方式,其中一种是选择 an+1=6a_{n+1}=6。如果她这样做,则:

  • a4=a5 mod 4=6 mod 4=2a_4=a_5\bmod 4=6\bmod 4=2
  • a3=a4 mod 3=2 mod 3=2a_3=a_4\bmod 3=2\bmod 3=2
  • a2=a3 mod 2=2 mod 2=0a_2=a_3\bmod 2=2\bmod 2=0
  • a1=a2 mod 1=0 mod 1=0a_1=a_2\bmod 1=0\bmod 1=0
  • a=[0,0,2,2,6]a = [0, 0, 2, 2, 6]
  • 屏幕上有 33 个不同的值。

在第二个测试用例中,Chaneka 只有 11 种可能的方式,即选择 an+1=0a_{n+1}=0。如果她这样做,则 a=[0,0,0]a = [0, 0, 0],屏幕上只有 11 个不同的值。

在第三个测试用例中,没有任何方式可以为槽位 n+1n+1 赋值非负整数。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页