CF1073E.Segment Sum

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

You are given two integers ll and rr ( lrl \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 .

输入格式

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

输出格式

Print one integer — the sum of numbers from ll to rr such that each number contains at most kk different digits, modulo 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 505129102=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 234523462=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 .

首页