A × B problem
来源:互联网 发布:abaqus软件 编辑:程序博客网 时间:2024/06/10 00:05
描述
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
1 2
123456789 987654321
样例输出
Case 1:
1 * 2 = 2
Case 2:
123456789 * 987654321 = 121932631112635269
1 * 2 = 2
Case 2:
123456789 * 987654321 = 121932631112635269
代码如下:
#include <iostream>#include <stdio.h>#include <stdlib.h>#include <algorithm>#include <string.h>#include <math.h>using namespace std;int main(){ int T,map[100000],i,j,k,num1,num2,num3; scanf("%d",&T); getchar(); char a[101],b[101]; for(int o=1; o<=T; o++) { scanf("%s %s",&a,&b); num1 = strlen(a); num2 = strlen(b); getchar(); printf("Case %d:\n%s * %s = ",o,a,b); if(strcmp(a,"0")==0 || strcmp(b,"0")==0) printf("0\n"); else { memset(map,0,sizeof(map)); for( i=0; i<num1; i++) { for( j=0; j<num2; j++) { map[i+j] += (a[num1 -i-1]-'0')*(b[num2-j-1]-'0'); k = i+j; while(map[k]>=10) { map[k+1]+=map[k]/10; map[k]%=10; k++; } } } i = 9999; num3 = i; while(map[i]==0) { i--; num3=i; } // printf("%d\n",num3); for(int i=num3; i>=0; i--) printf("%d",map[i]); printf("\n"); } if(o!=T) printf("\n"); } return 0;}
代码为转载:http://blog.csdn.net/en_xiaogui/article/details/17231713
阅读全文
0 0
- problem 1000: A+B problem
- Problem 1000 A+B Problem
- Problem - 1000 A + B Problem
- A + B Problem
- A + B Problem
- 1000 A+B Problem
- 1001 A + B Problem
- A+B Problem
- 1000 A+B Problem
- A + B Problem
- A + B Problem
- 1000 A + B Problem
- 1000 A+B Problem
- A + B Problem
- A + B Problem II
- A + B Problem II
- POJ1001 -- A-B Problem
- A + B problem II
- python--leetcode136. Single Number
- PEP8的规范整理
- 【Java】--@JsonIgnore and @JsonProperty
- AndroidStudio快捷键
- git多人协作
- A × B problem
- JS延迟加载
- 安装Oracle 11g后 服务里没有OracleDBConsoleorcl服务的解决办法
- Linux操作手册(忘记密码)
- layer图片的放大
- GDB调试libvirtd
- Linux入门基础知识
- Detection of Extraterrestrial KMP匹配 重复k次子串 好题
- HDU 1846 Brave Game 博弈论