首页 > 其他分享 >43. 字符串相乘(中)

43. 字符串相乘(中)

时间:2024-03-29 09:12:27浏览次数:27  
标签:f2 num1 num2 43 相乘 str ans 字符串

目录

题目

  • 给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。

注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。

示例 1:

输入: num1 = "2", num2 = "3"
输出: "6"

示例 2:

输入: num1 = "123", num2 = "456"
输出: "56088"

题解

  • 分析:有字符串num1 = "123"和 num2 = "456",把两个字符串拆开,36+350+3400+206+2050+20400+1006+10050+100*400
class Solution:
    def multiply(self, num1: str, num2: str) -> str:
        f1 = 1
        ans = 0
        # 倒序遍历
        for i in range(len(num1)-1,-1,-1):
            # 进位数
            f2 = 1
            # n1 乘以进位数
            n1 = int(num1[i]) * f1
            # 倒序遍历
            for j in range(len(num2)-1,-1,-1):
                n2 = int(num2[j]) * f2   
                ans += n1 * n2 
                # 进位数处理 *10
                f2 *=10
            f1 *=10
        return str(ans)

标签:f2,num1,num2,43,相乘,str,ans,字符串
From: https://www.cnblogs.com/lushuang55/p/18103015

相关文章

  • 文件名按数字排序,可以排序多组数字,尤其是99-333~~_222这种复杂数字组合的文件名或字符
    这是我本人编写的一个排序算法,主要就是解决复杂多组数字组合的这种文件名或者字符串的排序,排序主要规则就是从前往后对每一组数据进行排序,效果及截图如下:以下是使用方法:第一步搜索和安装我的Nuget包搜索和安装zmjtool这个包,我写的,如下图:第二步使用HMSorter的Sort方法进行......
  • 剑指offerJZ20题 表示数值的字符串 java
    描述剑指offerJZ20题表示数值的字符串请实现一个函数用来判断字符串str是否表示数值(包括科学计数法的数字,小数和整数)。科学计数法的数字(按顺序)可以分成以下几个部分:1.若干空格2.一个整数或者小数3.(可选)一个‘e’或‘E’,后面跟着一个整数(可正可负)4.若干空格......
  • 多层JSON字符串对象的差异化比较
    importcn.hutool.core.util.ObjUtil;importcn.hutool.core.util.StrUtil;importcom.fasterxml.jackson.databind.JsonNode;importcom.fasterxml.jackson.databind.ObjectMapper;importcom.fasterxml.jackson.databind.node.ObjectNode;importlombok.Data;importl......
  • C++ 字符串完全指南:学习基础知识到掌握高级应用技巧
    C++字符串字符串用于存储文本。一个字符串变量包含由双引号括起来的一组字符:示例创建一个string类型的变量并为其赋值:stringgreeting="Hello";C++字符串连接字符串连接可以使用+运算符来实现,生成一个新的字符串。示例:stringfirstName="John";stringlastN......
  • 【感悟《剑指offer》典型编程题的极练之路】02字符串篇!
    ​                                                                 个人主页:秋风起,再归来~                                        ......
  • 【性能优化】 【回溯】 【字符串】1307. 口算难题
    作者推荐视频算法专题本文涉及知识点数学回溯字符串性能优化LeetCode1307.口算难题给你一个方程,左边用words表示,右边用result表示。你需要根据以下规则检查方程是否可解:每个字符都会被解码成一位数字(0-9)。每对不同的字符必须映射到不同的数字。每个word......
  • Python 字符串转为字典的两种常用方式(接口交互时)
    结论:在做接口时,请求、响应信息,必须要用json格式 原因:常规的字符串转为字典有两种方式,但两种方式都存在一定的问题:1、ast.literal_eval()(包含eval等类型方法)问题1:安全性,(literal_eval安全性好一些,eval不安全)问题2:需要将字符串中的 true false  null  =》 True......
  • (55/60)两个字符串的删除操作、编辑距离
    两个字符串的删除操作leetcode:583.两个字符串的删除操作动态规划思路先求最长子序长度然后计算两个原字符串离最长子序长度差多少。代码实现classSolution{public:/*(之前搞错了)最长子序长度word[0:i-1]和word2[0:j-1]的最长子序长dp[i][j]if(word1[i-1]==wo......
  • 08天【代码随想录算法训练营34期】第四章 字符串part02(KMP)
    KMP算法解决字符串匹配问题文本串aabaabaaf模式串aabaaf问:模式串是否在文本串中出现过?1)暴力解法,ptr指向文本串index0,遍历一遍发现不匹配,ptr再移向index1,遍历……依次重复,直到ptr指向32)KMP算法,ptr指向文本串index0,遍历到f发现不匹配,由于“aa”在字符串中index3和4时也出现......
  • L2-043 龙龙送外卖
    考察的是贪心+记忆化搜索。最短路=走过的路径*2-从根到小区最深路径长度#include<bits/stdc++.h>usingnamespacestd;constintmaxn=1e5+10;intp[maxn],dis[maxn],dp[maxn];intmaxdepth=0,sumpath=0;intdfs(ints){//记忆化搜索 if(p[s]==-1)return0......