题解 | #大数乘法# 先去全部加到数组力,在对他进行进位操

大数乘法

https://www.nowcoder.com/practice/c4c488d4d40d4c4e9824c3650f7d5571

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param s string字符串 第一个整数
     * @param t string字符串 第二个整数
     * @return string字符串
     */
    public String solve (String s, String t) {
        // write code here
           if (s.charAt(0) - '0' == 0 ||t.charAt(0) - '0' == 0  ) {
            return "0";
        }
        
         StringBuffer ss = new StringBuffer(s).reverse();
        StringBuffer tt = new StringBuffer(t).reverse();
        int[] arr = new int[s.length() + t.length()-1];
        for (int i = 0; i < ss.length(); i++) {
            for (int j = 0; j < tt.length();  j++) {
                arr[i + j] += (ss.charAt(i) - '0') * (tt.charAt(j) - '0');
            }
        }

        //处理进位
        StringBuffer ret = new StringBuffer();
        int plus = 0;
        for (int i = 0; i < arr.length; i++) {
            plus += arr[i];
            ret.append(plus % 10);
            plus /= 10;
        }
        while (plus != 0) {
            ret.append(plus % 10);
            plus /= 10;
        }
        return ret.reverse().toString();

    }
}

全部评论

相关推荐

牛客21331815...:像我一投就pass,根本不用焦虑泡池子
点赞 评论 收藏
分享
双尔:你就写拥有ai开发经历,熟练运用提示词,优化ai,提高ai回答质量
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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