问题描述
求两个大的正整数相除的商
输入数据
第1 行是测试数据的组数n,每组测试数据占2 行,第1 行是被除数,第2 行是除数。
每组测试数据之间有一个空行,每行数据不超过100 个字符
输出要求
n 行,每组测试数据有一行输出是相应的整数商
输入样例
3
2405337312963373359009260457742057439230496493930355595797660791082739646
2987192585318701752584429931160870372907079248971095012509790550883793197894
10000000000000000000000000000000000000000
10000000000
5409656775097850895687056798068970934546546575676768678435435345
1
输出样例
0
1000000000000000000000000000000
5409656775097850895687056798068970934546546575676768678435435345
#include <stdio.h>
#include <string.h>
int iNum1[210];
int iNum2[210];
int minus(int* p1, int* p2, int length1, int length2){
if(length1 < length2)
return -1;
int i;
if(length1 == length2){
for(i = length1 -1; i >= 0; i --){
if(p1[i] < p2[i])
return -1;
}
}
for(i = 0; i < length1; i++){
p1[i] -= p2[i];
if(p1[i] < 0){
p1[i] += 10;
p1[i + 1] --;
}
}
for(i = length1 -1; i >= 0; i--){
if(p1[i])
return i + 1;
}
return 0;
}
int main(){
int nCases;
char cNum1[210];
char cNum2[210];
int result[210];
scanf("%d", &nCases);
while(nCases--){
scanf("%s", cNum1);
scanf("%s", cNum2);
memset(iNum1, 0, sizeof(iNum1));
memset(iNum2, 0, sizeof(iNum2));
memset(result, 0, sizeof(result));
int i, j = 0;
int length1 = strlen(cNum1);
for(i = length1 - 1; i >= 0; i--){
iNum1[j] = cNum1[i] - '0';
j++;
}
j = 0;
int length2 = strlen(cNum2);
for(i = length2 - 1; i >= 0; i--){
iNum2[j] = cNum2[i] - '0';
j++;
}
length1 = minus(iNum1, iNum2, length1, length2);
if(length1 < 0){
printf("0\n");
continue;
}
else if(length1 == 0){
printf("1\n");
continue;
}
result[0]++;
int dis = length1 - length2;
for(i = length1 -1; i >= 0; i--){
if(i >= dis)
iNum2[i] = iNum2[i - dis];
else
iNum2[i] = 0;
}
length2 = length1;
for(i = 0; i <= dis;i ++){
int disTmp;
while((disTmp = minus(iNum1, iNum2 + i, length1, length2 - i)) >= 0){
length1 = disTmp;
result[dis - i]++;
}
}
for(i = 0; i < 210; i++){
if(result[i] >= 10){
result[i + 1] += result[i] / 10;
result[i] %= 10;
}
}
int flag = 0;
for(i = 209; i >= 0;i --){
if(flag)
printf("%d", result[i]);
else if(result[i]){
flag = 1;
printf("%d", result[i]);
}
}
printf("\n");
}
return 0;
}
分享到:
相关推荐
需要杰哥讲解的毕设js代码
但根据文件名,我们可以推测“杰哥”可能是资料的作者或提供者,而“两套卷”可能指的是两套数学练习题或模拟试卷,分别针对不同的数学领域。 【标签】虽然为空,但如果我们为这个文件添加标签,可能包括“数学”、...
C++自制小游戏《杰哥和阿伟》源码(cpp) C++小游戏,由哔哩哔哩的梗制作而成,切勿当真哦~ 游戏内行为请勿模仿! 原创小游戏,请勿转载或整改~ 记得关注@Ender_momo,短时间内将发布制作过程
前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; 前端面试题:前端框架面试题大全; ...
计算机组成原理期末题,计算机组成原理期末常见考试题大全 计算机组成原理期末题,计算机组成原理期末常见考试题大全 计算机组成原理期末题,计算机组成原理期末常见考试题大全 计算机组成原理期末题,计算机组成...
笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题文档.zip 笔试面试算法题...
有跟我一样看不懂代码,只能盲抄来理解的吗,杰哥看到了莫生气我自己现在真写不了好了,今天的案例与while语句有关
全国大学生数学建模大赛真题:2020年全国大学生数学建模竞赛 B 题 - “地下水污染源识别”; 全国大学生数学建模大赛真题:2020年全国大学生数学建模竞赛 B 题 - “地下水污染源识别”; 全国大学生数学建模大赛真题...
计算机类专业部分课后习题与详细解答分析.docx 计算机类专业部分课后习题与详细解答分析.docx 计算机类专业部分课后习题与详细解答分析.docx 计算机类专业部分课后习题与详细解答分析.docx 计算机类专业部分课后习题...
10道经典算法习题与详细解析.docx 10道经典算法习题与详细解析.docx 10道经典算法习题与详细解析.docx 10道经典算法习题与详细解析.docx 10道经典算法习题与详细解析.docx 10道经典算法习题与详细解析.docx ...
电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术开发; 电赛历年真题查找与经典题目解析+编程知识+技术...
本人收集的几套百度笔试题。 doc格式,需要找工作的可以看看
美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术开发; 美赛历年真题查找与经典题目解析+编程知识+技术...
ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发; ACM历年真题查找与经典题目解析+编程知识+技术开发;...
蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识+技术开发; 蓝桥杯历年真题查找与经典题目解析+编程知识...
前端面试题:前端开发面试题大全,涵盖了HTML、CSS、JavaScript、前端框架和工具等方面; 前端面试题:前端开发面试题大全,涵盖了HTML、CSS、JavaScript、前端框架和工具等方面; 前端面试题:前端开发面试题大全,...
### Linux 环境下的开发项目指南 在 Linux 环境下进行开发项目不仅仅涉及编写代码,还需要掌握软件安装、环境配置、项目源码管理以及运维调试等多个方面。本指南将详细介绍如何在 Linux 系统中高效地完成开发工作。...
本c语言试题生成与考试系统划分为三个功能模块: ⑴ 试题管理模块:该模块的主要工能有上传试题、试题管理、试卷的自动生成。该模块针对的是管理员,管理员有且只有一个不能添加。所有的试题都是管理员通过逐个添加...
【Ceph分布式存储架构搭建】 Ceph是一种先进的开源分布式存储解决方案,它被广泛应用于OpenStack和CloudStack等云计算框架中,提供对象存储、文件系统和块存储服务。Ceph的独特之处在于其统一存储架构,支持多种...
Python 深度学习 - Pandas Pandas 是 Python 中一个流行的数据分析库,提供了高效、灵活的数据结构和数据分析工具。下面是对 Pandas 的详细介绍: 对象的创建 Pandas 中有两种主要的数据结构:Series(一维对象)...