题解 | #大数加法#

大数加法

http://www.nowcoder.com/practice/11ae12e8c6fe48f883cad618c2e81475

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 计算两个数之和
     * @param s string字符串 表示第一个整数
     * @param t string字符串 表示第二个整数
     * @return string字符串
     */
    public String solve (String s, String t) {
        int n1=s.length();
        int n2=t.length();
        if(s.length()==0)
            return t;
        else if(t.length()==0){
            return s;
        }
        char[]str=s.toCharArray();
        char[]tt=t.toCharArray();
        int i=n1-1;
        int j=n2-1;
        int real=0;
        int digit=0;
        StringBuffer sb=new StringBuffer();
        while((i>=0)&&(j>=0)){
            int num1=str[i]-'0';
            int num2=tt[j]-'0';
            digit=(num2+num1+real)%10;
            sb.append(String.valueOf(digit));
            real=(num2+num1+real)/10;
            i--;
            j--;
        }
        char[]ttttt=str;
        if(i<0){
            i=j;    //交换索引
            ttttt=tt;
            
        }
        if(real!=0){
            while(i>=0){
            int num=ttttt[i]-'0';
            digit=(num+real)%10;
            sb.append(String.valueOf(digit));
            real=(num+real)/10;
            i--;
            }
            
        }
        if(real!=0){
            sb.append("1");
        }
        return sb.reverse().toString();
    }
}
全部评论

相关推荐

Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务