• 数列之和


    出处:桂电oj,网址:http://onlinejudge.guet.edu.cn/guetoj/problem/1020.html
    有这样一类数列,例如, 2, 22, 222, 2222, 22222, 222222 3, 33, 333, 3333, 33333, 333333, 333333等 其中每个数的各位数上的值相同,例如,2,3,可以用M来表示 且每个数列所包含的数的个数不相同,可以用N来表示 你需要编写程序完成如下形式的数列求和 其中数列中每个数各位数的值M,以及数列所包含的数的个数N由键盘输入 求有M和N所决定的数列的和,并将其和输出

    Input

    输入包含2个数,M和N
    其中M表示数列中每个数各位数上的值,N表示数列包含的数的个数
    我们确保测试时( 0 < M < 10, 0 < N < 15 )

    Output

    输出由M和N所确定的数列之和

    Sample Input

    2 5
    
    3 7

    Sample Output

    24690
    
    3703701
    //-------------------------------------------------------------
    //当输入的数为2 11 时,一般的的int double的存不了的,要用数组,
    //思路:
    /*       2
    *       22
    *      222
    *     2222
    *      ...
    *+22222222
    *————————————
    *= ?
    *
    */
    //各位数相加,进位与十位相加...
       
    #include <iostream>
    using namespace std;
    void shulie_sum(int a,int b);
    int main()
    {
        int M,N;
        cin >> M >> N;
        shulie_sum(M,N);
        return 0;
    }
    void shulie_sum(int a,int b)
    {
        int c = 0;int sum[16] = {0};
        int s = 0;
        for (int i = 0; i < 16; i++)
        {
           if (b == 0)
               break;
           sum[15-i] = (a*b) % 10 + s;//个位相加
           if ((sum [15-i]) >= 10 && b != 1)//个位大于=10,进位
           {
                sum [15-i] = ((a*b)%10 + s )% 10;
           }
           s = (s + (a*b) ) / 10;
           b--;
        }
        for (int i = 0; i < 16; )
        {
            if (sum[i] == 0)
            {
                i++;
            }
            else
                for (int j = i; j < 16;j++)
            {
                cout << sum [i];
                i++;
            }
        }
    }
  • 相关阅读:
    SiteMesh在项目中的配置
    javascript深入理解js闭包
    小tip: 使用CSS将图片转换成黑白(灰色、置灰)
    java程序员最不愿意看到的十件事
    Spring AOP AspectJ
    2万字Java并发编程面试题整理(含答案,建议收藏)
    85道Java微服务面试题整理(助力2020面试)
    10个很多人不知道的Redis使用技巧
    2020年大厂Java面试题(基础+框架+系统架构+分布式+实战)
    2020年薪30W的Java程序员都要求熟悉JVM与性能调优!
  • 原文地址:https://www.cnblogs.com/ediszhao/p/3481449.html
Copyright © 2020-2023  润新知