当前位置: 首页 > news >正文

大数相乘,大数相加

大数相乘: 

#include <iostream>
#include <vector>
#include <string>std::vector<int> multiply(const std::vector<int>& num1, const std::vector<int>& num2) {int n1 = num1.size();int n2 = num2.size();std::vector<int> result(n1 + n2, 0);for (int i = n1 - 1; i >= 0; --i) {int carry = 0;for (int j = n2 - 1; j >= 0; --j) {int sum = num1[i] * num2[j] + result[i + j + 1] + carry;result[i + j + 1] = sum % 10;carry = sum / 10;}result[i] += carry;}// 去除前导零int i = 0;while (i < result.size() && result[i] == 0)++i;if (i == result.size())return {0};return std::vector<int>(result.begin() + i, result.end());
}int main() {std::vector<int> num1 = {1, 2, 3};std::vector<int> num2 = {4, 5, 6};std::vector<int> product = multiply(num1, num2);for (int digit : product) {std::cout << digit;}std::cout << std::endl;return 0;
}


http://www.mrgr.cn/news/29830.html

相关文章:

  • 上市公司-客户ESG数据集(dta+xlsx+参考文献)(2009-2023年)
  • 城市级河流三维处理及展示的一些技术
  • 【七篇文章从零速通transformer】01 从零开始解密神经网络:深度学习基础全解析
  • 数字IC设计\FPGA 职位经典笔试面试整理--语法篇 Verilog System Verilog(部分)
  • npm包管理工具
  • python运行时错误:找不到fbgemm.dll
  • 828华为云征文|Flexus云服务器X实例部署宝塔运维面板
  • 【kafka-03】springboot整合kafka以及核心参数详解
  • C++——求3个数中最大的数(分别考虑整数、双精度数、长整数数的情况),用函数重载方法。
  • leetcode01——27. 移除元素(双指针)、977. 有序数组的平方(双指针)、209. 长度最小的子数组(双指针/滑动窗口)
  • WINDOWS AGENTARENA:EVALUATING MULTI-MODAL OS AGENTS AT SCALE论文学习
  • 2-98 基于matlab的苹果特征检测
  • 镀金引线---
  • 程序员修炼之道 11:当你编码时
  • Java-获取对象字段名并遍历处理
  • Golang开发的OCR-身份证号码识别(不依赖第三方)
  • AUTOSAR_EXP_ARAComAPI的5章笔记(5)
  • Jetbrains开发工具使用通义灵码
  • Android 15 正式发布至 AOSP
  • Docker Registry API best practice 【Docker Registry API 最佳实践】