fork download
  1.  
  2. #include <bits/stdc++.h>
  3. #define fi first
  4. #define se second
  5. #define mp make_pair
  6. #define pb push_back
  7. #define mod 1000000007
  8. //#define mod 3
  9. #define ll long long
  10. using namespace std;
  11. ll a[100010],b[100010];
  12. int main()
  13. {
  14. ll n,k,a0,an,diff,n0,n1,i,cnt=1;
  15. cin>>n>>k;
  16. for(i=0;i<n/k;i++)
  17. cin>>a[i];
  18. for(i=0;i<n/k;i++)
  19. cin>>b[i];
  20. for(i=0;i<n/k;i++)
  21. {
  22. an=pow(10,k);
  23. diff=an % a[i];
  24. if(diff!=0)
  25. an=an-diff;
  26. else
  27. an=an-a[i];
  28. a0=0;
  29. //diff=a0 % a[i];
  30. //if(diff!=0)
  31. // a0=a0+(a[i]-diff);
  32. n0=((an-a0)/a[i])+1;
  33.  
  34.  
  35. a0=b[i]*pow(10,k-1);
  36. diff=a0 % a[i];
  37. if(diff !=0)
  38. a0=a0+(a[i]-diff);
  39. an=((b[i]+1)*pow(10,k-1))-1;
  40. diff=an % a[i];
  41. if(diff != 0)
  42. an=an-diff;
  43. n1=((an-a0)/a[i])+1;
  44.  
  45. //cout<<n0<<" "<<n1<<endl;
  46. cnt=(cnt*((n0-n1)%mod))%mod;
  47. }
  48. cout<<cnt<<endl;
  49. }
  50.  
Success #stdin #stdout 0s 5024KB
stdin
8 2
1 22 3 44
5 4 3 2
stdout
32400