我是靠谱客的博主 含蓄棉花糖,最近开发中收集的这篇文章主要介绍面试算法题:求a+aa+aaa+aaaa+aa...a的值,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目

求s=a+aa+aaa+aaaa+aa…a的值,数字个数为n,其中a是一个数字。例如2+22+222+2222+22222(此时n=5)

思路

由于aa…a是一个整数,这样基本排除要考虑越界问题,所以不用往大数方向考虑。
个位数就是n个a相加也就是a*n,十位数也就是a*(n-1)……
各个位置上的数乘以权值相加即可。

代码

private static void add_N1() {
        int n=3;
        int a=6;
        int x=0,y=0;
        for (int i = 0; i < n; i++) {
            x=a*(n-i);
            y+=x*Math.pow(10,i);

        }
        System.out.print("和为: "+y);
}

或者

    private static void add_N1() {
        int n=3;
        int a=1;
        int x=0,y=0;
        for (int i = 0; i < n; i++) {
            x=a*(i+1);
            y=x+y*10;

        }
        System.out.print("和为: "+y);
    }

最后还是那句话,哪位看官有更好更便捷的算法,请告知一下哈。

最后

以上就是含蓄棉花糖为你收集整理的面试算法题:求a+aa+aaa+aaaa+aa...a的值的全部内容,希望文章能够帮你解决面试算法题:求a+aa+aaa+aaaa+aa...a的值所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部