CF1073E.Segment Sum

提高+/省选-

通过率:0%

时间限制:1.00s

内存限制:256MB

AC君温馨提醒

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

题目描述

You are given two integers ll and rr (l≤rl \le r). Your task is to calculate the sum of numbers from ll to rr (including ll and rr) such that each number contains at most kk different digits, and print this sum modulo 998244353998244353.

For example, if k=1k = 1 then you have to calculate all numbers from ll to rr such that each number is formed using only one digit. For l=10,r=50l = 10, r = 50 the answer is 11+22+33+44=11011 + 22 + 33 + 44 = 110.

给你两个整数 ll 和 rr(满足 l≤rl \le r)。你的任务是计算区间 [l,r][l, r] 内所有满足“至多包含 kk 个不同数字”的整数之和,并将该和对 998244353998244353 取模后输出。

例如,若 k=1k = 1,则你需要计算区间 [l,r][l, r] 内所有仅由一个数字构成的整数之和。当 l=10,r=50l = 10, r = 50 时,答案为 11+22+33+44=11011 + 22 + 33 + 44 = 110。

输入格式

The only line of the input contains three integers ll, rr and kk (1≤l≤r<1018,1≤k≤101 \le l \le r \lt 10^{18}, 1 \le k \le 10) — the borders of the segment and the maximum number of different digits.

输入仅包含一行,三个整数 ll、rr 和 kk(1≤l≤r<10181 \le l \le r \lt 10^{18},1≤k≤101 \le k \le 10)—— 分别表示区间的边界以及数字中最多允许出现的不同数字的个数。

输出格式

Print one integer — the sum of numbers from ll to rr such that each number contains at most kk different digits, modulo 998244353998244353.

输出一个整数——即区间 [l,r][l, r] 内所有满足“其十进制表示中至多包含 kk 个不同数字”的整数之和,对 998244353998244353 取模。

输入输出样例

  • 输入#1

    10 50 2

    输出#1

    1230
  • 输入#2

    1 2345 10

    输出#2

    2750685
  • 输入#3

    101 154 2

    输出#3

    2189

说明/提示

For the first example the answer is just the sum of numbers from ll to rr which equals to 50⋅512−9⋅102=1230\frac{50 \cdot 51}{2} - \frac{9 \cdot 10}{2} = 1230. This example also explained in the problem statement but for k=1k = 1.

For the second example the answer is just the sum of numbers from ll to rr which equals to 2345⋅23462=2750685\frac{2345 \cdot 2346}{2} = 2750685.

For the third example the answer is 101+110+111+112+113+114+115+116+117+118+119+121+122+131+133+141+144+151=2189101 + 110 + 111 + 112 + 113 + 114 + 115 + 116 + 117 + 118 + 119 + 121 + 122 + 131 + 133 + 141 + 144 + 151 = 2189.

第一个样例的答案即为从 ll 到 rr 的所有整数之和,其值为 50⋅512−9⋅102=1230\frac{50 \cdot 51}{2} - \frac{9 \cdot 10}{2} = 1230。该样例在题目描述中亦有说明,但对应的是 k=1k = 1 的情形。

第二个样例的答案即为从 ll 到 rr 的所有整数之和,其值为 2345⋅23462=2750685\frac{2345 \cdot 2346}{2} = 2750685。

第三个样例的答案为 101+110+111+112+113+114+115+116+117+118+119+121+122+131+133+141+144+151=2189101 + 110 + 111 + 112 + 113 + 114 + 115 + 116 + 117 + 118 + 119 + 121 + 122 + 131 + 133 + 141 + 144 + 151 = 2189。

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

首页