Advertisement
_no0B

Untitled

Dec 24th, 2021
718
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.31 KB | None | 0 0
  1. #include<bits/stdc++.h>
  2. #define LL long long
  3. #define N ((int)6e4 + 5)
  4. #define MOD ((int)998244353 + 0)
  5. #define MAX ((int)1e9 + 7)
  6. #define MAXL ((ll)1e18 + 7)
  7. #define MAXP ((int)1e3 + 7)
  8. #define thr 1e-8
  9. #define pi acos(-1)  /// pi = acos ( -1 )
  10. #define fastio ios_base::sync_with_stdio(false),cin.tie(NULL)
  11. #define endl "\n"
  12.  
  13. using namespace std;
  14.  
  15.  
  16. int nCr(int n , int r) /// O(n*n)
  17. {
  18.     if(min(n , r) < 0) return 0;
  19.     if(r == 0) return 1;
  20.     if(dpp[n][r] != -1) return dpp[n][r];
  21.     return dpp[n][r] = nCr(n-1 , r)  + nCr(n - 1 , r - 1);
  22. }
  23.  
  24. int Series(int start , int rat , int n)
  25. {
  26.     int ans = start * (BigMod(rat , n) - 1) % MOD * BigMod(rat - 1 , MOD - 2) % MOD;
  27.     if(ans < 0) ans += MOD;
  28.     return ans;
  29. }
  30.  
  31. void PreProcess(int n)
  32. {
  33.     fac[0] = 1;
  34.     for(int i = 1 ; i <= n ; i++) fac[i] = 1LL*i*fac[i-1] % MOD;
  35.     ifac[n] = BigMod(fac[n] , MOD-2);
  36.     for(int i = n - 1; i >= 0 ; i--) ifac[i] = 1LL*(i+1)*ifac[i+1] % MOD;
  37. }
  38.  
  39. int main()
  40. {
  41.     /// problem: https://www.spoj.com/problems/ADASUM/
  42.     string num;
  43.     cin>>num;
  44.     int ans =  0;
  45.     for(int i = 0 ; i < num.size() ; i++){
  46.         int digit = num[i] - '0';
  47.         int s = i + 1;
  48.         int e = num.size() - i - 1;
  49.         ans =(ans + 1LL * digit * s * Series(1 , 10 , e + 1)) % MOD;
  50.     }
  51.     cout<<ans<<endl;
  52. }
  53.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement