• J


     1 #include "cstdio"
     2 #include "math.h"
     3 #include "cstring"
     4 #define mod 1000000007LL
     5 #define LL long long
     6 
     7 struct node
     8 {
     9     LL cnt,sum,sqsum;
    10     node() {cnt=-1;sum=sqsum=0;}
    11     node(LL cnt,LL sum,LL sqsum):cnt(cnt),sum(sum),sqsum(sqsum) {}
    12 }dp[20][10][10];
    13 
    14 LL a[20],p[25];
    15 
    16 node dfs(int pos,int re1,int re2,bool limit)
    17 {
    18     if(!pos) return re1!=0&&re2!=0?node(1,0,0):node(0,0,0);
    19     if(!limit&&dp[pos][re1][re2].cnt!=-1) return dp[pos][re1][re2];
    20     int up=limit?a[pos]:9;
    21     node ans;ans.cnt = 0;
    22     for(int i=0;i<=up;i++)
    23     {
    24         if(i==7) continue;
    25         node next=dfs(pos-1,(re1+i)%7,(re2*10+i)%7,limit&&i==up);
    26         ans.cnt+=next.cnt;
    27         ans.cnt%=mod;
    28         ans.sum+=(next.sum+((p[pos]*i)%mod)*next.cnt%mod)%mod;
    29         ans.sum%=mod;
    30         ans.sqsum+=(next.sqsum+((2*p[pos]*i)%mod)*next.sum)%mod;
    31         ans.sqsum%=mod;
    32         ans.sqsum+=((next.cnt*p[pos])%mod*p[pos]%mod*i*i%mod);
    33         ans.sqsum%=mod;
    34     }
    35     if(!limit) dp[pos][re1][re2]=ans;
    36     return ans;
    37 }
    38 
    39 LL f(LL x)
    40 {
    41     int pos=0;
    42     while(x)
    43     {
    44         a[++pos]=x%10;
    45         x/=10;
    46     }
    47     node tt=dfs(pos,0,0,true);
    48     return tt.sqsum;
    49 }
    50 
    51 int main()
    52 {
    53     int T;
    54     LL l,r;
    55     scanf("%d",&T);
    56     p[1]=1;
    57     for(int i=2;i<=20;i++) p[i]=(p[i-1]*10)%mod;
    58     while(T--)
    59     {
    60         scanf("%I64d%I64d",&l,&r);
    61         LL ans=f(r);
    62         ans-=f(l-1);
    63         printf("%I64d
    ",(ans%mod+mod)%mod);
    64     }
    65 }
  • 相关阅读:
    Swagger接入
    Elasticsearch5.0.1索引压测结果
    Elasticsearch5.0 BreakChange摘要
    Elasticsearch1.7到2.3升级实践总结
    Java动态代理全面分析
    Spring之AntPathMatcher
    Lock的实现之ReentrantLock详解
    Elasticsearch之client源码简要分析
    elasticserach 索引删除 源码分析
    httpClient4.5.2工具类总结
  • 原文地址:https://www.cnblogs.com/ouyang_wsgwz/p/9135634.html
Copyright © 2020-2023  润新知