Цифрлар
Жыл сайынғы информатика пәні мұғалімдеріне арналған олимпиадада бір кезеңде қатысушыларға сандық есеп ұсынылды.
Әр қатысушыға бүтін \(N\) саны беріліп, \(1\)-ден \(N\)-ге дейінгі әрбір сан үшін сол санмен бірдей цифрлар санына ие және сол саннан аспайтын оң сандар санын табу тапсырылды. Бұл сан \(f(x)\) деп аталады.
Сіздің міндетіңіз — \(f(1) + f(2) + \dots + f(N)\) қосындысын \(998244353\) модуліне есептеу.
Енгізу
Бір бүтін сан \(N\) (\(1 \le N \le 10^{18}\)).
Шығару
Жауапты бір бүтін сан ретінде шығарыңыз.
Бағалау жүйесі
| Ішінара есеп | Шектеулер | Ұпай |
|---|---|---|
| 1 | \(1 \leq n \leq 10^6\) | 15 |
| 2 | \(1 \leq n \leq 10^{12}\) | 25 |
| 3 | \(1 \leq n \leq 10^{18}\) | 60 |
Мысалдар
Енгізу 1
11
Жауап 1
48
Ескертпелер
\(1\)-ден \(9\)-ға дейінгі сандар бір таңбалы, сондықтан \(f(x) = x\).
\(f(10) = 1\), себебі \(10\) — екі таңбалы және тек өзі ғана шартқа сәйкеседі.
\(f(11) = 2\), себебі екі таңбалы \(10\) және \(11\) сандары \(11\)-ден аспайды.
Жалпы қосынды: \(1 + 2 + \dots + 9 + 1 + 2 = 45 + 1 + 2 = 48\).
Пікірлер