描述

Redraiment碰到了一个难题,需要请你来帮忙:给你两个整数,请你计算A × B。

输入

数据的第一行是整数T(1 ≤ T ≤ 20),代表测试数据的组数。 
接着有T组数据,每组数据只有一行,包括两个非负整数A和B。 
但A和B非常大,Redraiment能保证这些数用long来保存一定会溢出。 
但A和B的位数最大不会超过100位。

输出

对应每组测试数据,你都要输出两行: 
第一行为:"Case #:", # 代表这是第几组测试数据。 
第二行是一个等式:"A * B = Sum", Sum 代表 A × B 的结果。 
你要注意这个等式里包含了几个空格。 
要求每组数据之间都需要保留一个空行。

样例输入

2
1 2
123456789 987654321

样例输出

Case 1:
1 * 2 = 2

Case 2:
123456789 * 987654321 = 121932631112635269

 
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std; #define MAX 100 int solve(char num1[],char num2[], int sum[])
{
int i, j, len, len1, len2;
int a[MAX+] = {};
int b[MAX+] = {};
int c[MAX*+] = {}; len1 = strlen(num1);
for(j = , i = len1-; i >= ; i--) //把数字字符转换为整型数
a[j++] = num1[i]-'';
len2 = strlen(num2);
for(j = , i = len2-; i >= ; i--)
b[j++] = num2[i]-''; for(i = ; i < len2; i++)//用第二个数乘以第一个数,每次一位
{
for(j = ; j < len1; j++)
{
c[i+j] += b[i] * a[j]; //先乘起来,后面统一进位
}
} for(i=; i<MAX*; i++) //循环统一处理进位问题
{
if(c[i]>=)
{
c[i+]+=c[i]/;
c[i]%=;
}
} for(i = MAX*; c[i]== && i>=; i--); //跳过高位的0
len = i+; // 记录结果的长度
for(; i>=; i--)
sum[i]=c[i];
return len;
} int main(){
int i, len;
int sum[MAX*+] = {};
int T;
char num1[MAX+];
char num2[MAX+];
cin>>T;
for(int j=;j<=T;j++){
cin>>num1>>num2;
printf("Case %d:\n",j);
cout<<num1<<" * "<<num2<<" = ";
if(strcmp(num1,"")==||strcmp(num2,"")==)
cout<<"";
len = solve(num1,num2,sum);
for( i = len-; i>=; i-- )
cout<<sum[i];
printf("\n\n");
}
return ;
}

AxB Proplem(大数乘法)的更多相关文章

  1. 51nod 1027大数乘法

    题目链接:51nod 1027大数乘法 直接模板了. #include<cstdio> #include<cstring> using namespace std; ; ; ; ...

  2. [POJ] #1001# Exponentiation : 大数乘法

    一. 题目 Exponentiation Time Limit: 500MS   Memory Limit: 10000K Total Submissions: 156373   Accepted: ...

  3. 用分治法实现大数乘法,加法,减法(java实现)

    大数乘法即多项式乘法问题,求A(x)与B(x)的乘积C(x),朴素解法的复杂度O(n^2),基本思想是把多项式A(x)与B(x)写成 A(x)=a*x^m+b B(x)=c*x^m+d 其中a,b,c ...

  4. HDOJ-1042 N!(大数乘法)

    http://acm.hdu.edu.cn/showproblem.php?pid=1042 题意清晰..简单明了开门见山的大数乘法.. 10000的阶乘有35000多位 数组有36000够了 # i ...

  5. 51 Nod 1027 大数乘法【Java大数乱搞】

    1027 大数乘法 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出2个大整数A,B,计算A*B的结果. Input 第1行:大数A 第2行:大数B (A,B的长度  ...

  6. 51 Nod 1028 大数乘法 V2【Java大数乱搞】

    1028 大数乘法 V2 基准时间限制:2 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 给出2个大整数A,B,计算A*B的结果. Input 第1行:大数A 第2行:大数B (A ...

  7. hdu_1042(模拟大数乘法)

    计算n! #include<cstring> #include<cstdio> using namespace std; ]; int main() { int n; whil ...

  8. (母函数 Catalan数 大数乘法 大数除法) Train Problem II hdu1023

    Train Problem II Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  9. 大数乘法|2012年蓝桥杯B组题解析第六题-fishers

    (9')大数乘法 对于32位字长的机器,大约超过20亿,用int类型就无法表示了,我们可以选择int64类型,但无论怎样扩展,固定的整数类型总是有表达的极限!如果对超级大整数进行精确运算呢?一个简单的 ...

  10. 51nod1057-N的阶乘(大数乘法巧解)

    这道大数乘法开始我是想套板子模拟的..然后就发现2/3的例子都wa了.(惊了).然后在思考后发现n2的板子的确过不了这么多的大数.(不看题的下场).所以,我在网上发现了分块求大数的方法.%%% 思路来 ...

随机推荐

  1. vue使用阿里矢量图标

    官方注册注册 1.加入购物车 在阿里矢量图标库将想要的图标加入购物车,然后在购物车中将图标添加到项目:     2.下载 到我的项目中,将图标下载到本地     3.解压引入 在vue项目的asset ...

  2. Vue父组件向子组件传递方法(自定义方法)并且子组件向父组件传递数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. http协议工作原理(精简)

    HTTP协议进行通信时,需要有客户端(即终端用户)和服务端(即Web服务器),在Web客户端向Web服务器发送请求报文之前,先要通过TCP/IP协议在Web客户端和服务器之间建立一个TCP/IP连接 ...

  4. git使用方法(持续更新)

    2018/5/9 最基本的操作: 添加文件.文件夹.所有文件: git add test.py   //添加单个文件 git add src        //添加文件夹 git add .      ...

  5. VMware14虚拟机与宿主机建立通讯

    当我们在VMware14中运行虚拟机搭建实验环境就需要与我们的宿主机或另一台虚拟机连接通讯,下面我们就来看看如何建立通讯,实现虚拟机与宿主机.虚拟机与虚拟机互联互通. 准备环境:一台安装好VMware ...

  6. Vue + Springboot 开发的简单的用户管理系统

    后台接口如下: 页面如下: 1. 主页,显示所有的用户信息 2. 点击详情,看到某个id的用户的详细信息 3. 点击编辑按钮,跳转到的详细的编辑(更新)页面 4. 添加用户页面 对应的vue代码如下 ...

  7. python BeautifulSoup4解析网页

    html = """ <html><head><title>The Dormouse's story</title>< ...

  8. 关于strlen和sizeof的使用

    在学习C语言中发现strlen和sizeof的关系不是很明确,今天来总结一下这两个的区别: sizeof 是运算符,用来计算字节数,在计算字符串数组大小时包含(\0) 在编译时计算大小,参数可以是数组 ...

  9. DT7.0主动推送当天高质量图片数据到熊掌号展现

    <?php /* 百度当天主动推送熊掌功能 作者:68喜科技 用于:DT7.0 功能模块:优质内容推送熊掌*出图内容当天推送 */ //引入全局变量函数 defined('IN_DESTOON' ...

  10. linux服务器上安装jenkins

    nkins常用的有两种安装方式: 1.直接下载war包jenkins.war,下载地址https://jenkins.io/download 直接下载 1.1.可以把war包直接部署到servlet容 ...