大整数乘法

简介: 大整数乘法

问题描述:


求两个不超过1000位的非负整数的乘积


输入:


有两行,每行是一个不超过1000位的非负整数,没有多余的前导0.


输出:


一行,即相乘后的结果,结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342.


样例输入:


12345678900


98765432100


样例输出:


1219326311126352690000


程序代码:


#include<stdio.h>
#include<string.h>
#define N 1001
char s1[N];
char s2[N];
int a1[N];
int a2[N];
int b[N*2];
int main()
{
  int i,j,len1,len2;
  while(~scanf("%s%s",s1,s2))
  {
    memset(a1,0,sizeof(a1));
    memset(a2,0,sizeof(a2));
    memset(b,0,sizeof(b));
    len1=strlen(s1);
    len2=strlen(s2);
    j=0;
    for(i=len1-1;i>=0;i--)
      a1[j++]=s1[i]-'0';
    j=0;
    for(i=len2-1;i>=0;i--)
      a2[j++]=s2[i]-'0';
    for(i=0;i<len2;i++)//每一轮都a1的一位去和a2的各位相乘
      for(j=0;j<len1;j++)
        b[i+j]+=a1[j]*a2[i];//两个数的第i,j位相乘,结果累加到第i+j位
    for(i=0;i<N*2;i++)
    {
      if(b[i]>=10)//处理进位情况
      {
        b[i+1]+=b[i]/10;//十位进到下一位
        b[i]%=10;//保留个位的数
      }
    }
    bool ans=false;
    for(i=N*2-1;i>=0;i--)//依次把每一位输出
    {
      if(ans)
        printf("%d",b[i]);
      else if(b[i])
      {
        printf("%d",b[i]);
        ans=true;
      }
    }
    /*if(!ans)
      printf("0");*/
    printf("\n");
  }
  return 0;
}


相关文章
|
运维 监控 Linux
解决CPU与带宽高使用率问题:深入分析与应对策略
引言:性能问题的诊断与优化 在运维工作中,操作系统性能问题如影随形,典型代表是CPU使用率高和带宽使用率高的问题,它们直接影响应用的性能和响应时间。这篇记录将逐个分析这两个问题的产生原因和解决方法。
解决CPU与带宽高使用率问题:深入分析与应对策略
|
存储 运维 Nacos
nacos常见问题之连接用户名和密码把明文用户名和密码进行加密如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
2239 2
|
前端开发
Electron 渲染进程与渲染进程之间的实时通信 (实时触发及接收消息)
Electron 渲染进程与渲染进程之间的实时通信 (实时触发及接收消息)
|
机器学习/深度学习 传感器 算法
基于加权人工鱼群算法的深空天线定位PID控制器优化设计附matlab代码
基于加权人工鱼群算法的深空天线定位PID控制器优化设计附matlab代码
超详细汇编注释 操作系统实验二 操作系统的引导(哈工大李治军)(二)
超详细汇编注释 操作系统实验二 操作系统的引导(哈工大李治军)(二)
284 0
超详细汇编注释 操作系统实验二 操作系统的引导(哈工大李治军)(二)
|
SQL 资源调度 分布式计算
hive 数据源,yarn 集群测试, SQL 分别取 topN4 | 学习笔记
快速学习 hive 数据源,yarn 集群测试, SQL 分别取 topN4
239 0
|
5天前
|
云安全 人工智能 安全
AI被攻击怎么办?
阿里云提供 AI 全栈安全能力,其中对网络攻击的主动识别、智能阻断与快速响应构成其核心防线,依托原生安全防护为客户筑牢免疫屏障。
|
14天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~