zoukankan      html  css  js  c++  java
  • Subnumbers

    Given a positive integer N, let us define a subnumber of N as a consecutive number of digits NOT starting with 0. For example if 0, it has 7 subnumbers, namely, 1, 10, 102, 1021, 2, 21 and 1 (again). Here is your task: please calculate the sum of all the subnumbers of N. For 1021, the sum is 1+10+102+1021+2+21+1 = 1158. Since the result may be very large, output the answer modulo 1000000007 (1) please.

    Input Specification:

    Each input file contains one test case, which gives the integer N (0) in a line.

    Output Specification:

    Print in a line the sum of all N's subnumbers (modulo 1000000007).

    Sample Input:

    1234567890123456789
    
     

    Sample Output:

    332876913
     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 #define ms 1000000007u
     4 vector<long long> v;
     5 int main()
     6 {
     7     ios::sync_with_stdio(false);
     8  //     freopen("data.txt","r",stdin);
     9       string ss;
    10       long long s=0,sum=0;
    11        cin>>ss;
    12        reverse(ss.begin(),ss.end());
    13        int k=ss.size();
    14        v.resize(k,1);
    15        for(int i=1;i<k;i++)
    16        v[i]=(v[i-1]*10+1)%ms;
    17     for(int i=0;i<k;i++)
    18     {
    19         sum+=(ss[i]-'0')*v[i];
    20         if(ss[i]!='0')
    21         s=(s+sum)%ms;
    22     }
    23     cout<<s;
    24     return 0;
    25 }
    诚者,君子之所守也。
  • 相关阅读:
    socketserver
    socket进阶
    socket基础
    反射
    subprocess模块
    面向对象高级特性
    面向对象基础
    字典的高级特性
    *号的妙用
    logging模块
  • 原文地址:https://www.cnblogs.com/SkystarX/p/12285779.html
Copyright © 2011-2022 走看看