// coached by https://www.luogu.com.cn/problem/P6146 #include #define S 200000+2 #define MD 998244353 int main() { static char cc[S]; static int dd[S], bb[S]; int n, h; scanf("%s", cc); n = strlen(cc); bb[0] = 1; for (h = 1; h < n; h++) bb[h] = bb[h - 1] * 2ll % MD; for (h = 0; h < n; h++) { if (h) dd[h] = (0ll + dd[h - 1] + dd[h - 1] * 10ll + 1ll * bb[h] * (cc[h] - '0')) % MD; else dd[h] = cc[h] - '0'; } printf("%d\n", dd[n - 1]); return 0; }