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

备战蓝桥杯【高精度乘法和高精度除法】

🌹作者:云小逸
📝个人主页:云小逸的主页
📝Github:云小逸的Github
🤟motto:要敢于一个人默默的面对自己,强大自己才是核心。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开!==🤟
👏专栏:C++👏 👏专栏:Java语言👏
👏专栏:C语言初阶👏👏专栏:数据结构👏

文章目录

  • 前言
  • 高精度乘法:
    • 题目:
    • 输入格式
    • 输出格式
    • 数据范围
    • 输入样例:
    • 输出样例:
    • 做题思路:
    • 代码:
  • 高精度除法:
    • 题目:
    • 输入格式
    • 输出格式
    • 数据范围
    • 输入样例:
    • 输出样例:
    • 做题思路:
    • 代码:
  • 最后


前言

今天这一篇文章是借着上面一篇文章继续写关于高精度的问题:高精度乘法和高精度除法。
如果有错误,请谅解,请私信于我,谢谢!
——————————————————————————————

首先先写上几句话:献给坚持创作的我和点开这篇文章希望进步的你
1.不要对任何人抱有希望,每个人都在皱着眉头忙着应付自己的生活。

2.这个世界上的所有灵魂,都是半人半鬼,看得太近,其实都无法入眼。

3.你终会坠入柴米油盐的日子;无论你再怎么感性。

4.真正的美好都在别人的朋友圈里,而我的美好,总会被生活中的琐事打的七零八碎。

5.关有些事情,我们心里都明白,可是不知道为什么,就是不能说破。

高精度乘法:

题目:

给定两个非负整数(不含前导 0) A 和 B,请你计算 A×B 的值。

输入格式

共两行,第一行包含整数 A,第二行包含整数 B。

输出格式

共一行,包含 A×B 的值。

数据范围

1≤A的长度≤100000,
0≤B≤10000

输入样例:

2
3

输出样例:

6

做题思路:

先实现一个函数mul,它可以将一个整数向量A和一个整数b相乘,并返回一个新的整数向量C。在main函数中,它首先从输入中读取一个字符串a和一个整数b,然后将字符串a转换为整数向量A,最后调用mul函数将A和b相乘,并将结果输出到屏幕上。

代码:

#include <iostream>
#include <vector>using namespace std;vector<int> mul(vector<int> &A, int b)
{vector<int> C;int t = 0;for (int i = 0; i < A.size() || t; i ++ ){if (i < A.size()) t += A[i] * b;C.push_back(t % 10);t /= 10;}while (C.size() > 1 && C.back() == 0) C.pop_back();return C;
}int main()
{string a;int b;cin >> a >> b;vector<int> A;for (int i = a.size() - 1; i >= 0; i -- ) A.push_back(a[i] - '0');auto C = mul(A, b);for (int i = C.size() - 1; i >= 0; i -- ) printf("%d", C[i]);return 0;
}

在这里插入图片描述

高精度除法:

题目:

给定两个非负整数(不含前导 0) A,B,请你计算 A/B 的商和余数。

输入格式

共两行,第一行包含整数 A,第二行包含整数 B。

输出格式

共两行,第一行输出所求的商,第二行输出所求余数。

数据范围

1≤A的长度≤100000,
1≤B≤10000,
B 一定不为 0

输入样例:

7
2

输出样例:

3
1

做题思路:

先实现一个整数除法的功能,它接受一个字符串表示的被除数和一个整数表示的除数,然后计算出商和余数,最后将结果输出到控制台。

代码:

#include <iostream>
#include <vector>
#include <algorithm>using namespace std;vector<int> div(vector<int> &A, int b, int &r)
{vector<int> C;r = 0;for (int i = A.size() - 1; i >= 0; i -- ){r = r * 10 + A[i];C.push_back(r / b);r %= b;}reverse(C.begin(), C.end());while (C.size() > 1 && C.back() == 0) C.pop_back();return C;
}int main()
{string a;vector<int> A;int B;cin >> a >> B;for (int i = a.size() - 1; i >= 0; i -- ) A.push_back(a[i] - '0');int r;auto C = div(A, B, r);for (int i = C.size() - 1; i >= 0; i -- ) cout << C[i];cout << endl << r << endl;return 0;
}

最后

十分感谢你可以耐着性子把它读完和我可以坚持写到这里,送几句话,对你,也对我:

1.小时候的难过会挂在嘴边,长大了才知道,真正的难过是表现不出来的。

2.不是努力了就有回报的,有些人光活着就要拼尽全力。

3.受了天大的委屈也一声不吭,一句安慰,却让我眼里进了风沙。

4.希望你永远都不会懂什么是:万般皆是命,半点不由人

5.所谓现实就是,人没有钱就不如鬼,汤没有盐就不如水,慢慢地你就会发现,一颗好的心,比不上一张好的嘴。

最后如果觉得我写的还不错,请不要忘记点赞✌,收藏✌,加关注✌哦(。・ω・。)

愿我们一起加油,奔向更美好的未来,愿我们从懵懵懂懂的一枚菜鸟逐渐成为大佬。加油,为自己点赞!

http://www.lryc.cn/news/5626.html

相关文章:

  • 火眼审阅 | 基于NLP和OCR识别技术赋能合同审阅
  • 关于在集合中对象比较属性值的问题
  • java微信小程序旅游管理系统
  • 2023年要跟踪的11个销售管理关键指标
  • MongoDB--》基本常用命令使用
  • js浮点数四则运算精度丢失以及toFixed()精度丢失解决方法
  • 高姿态下的面部表情识别系统
  • English Learning - Day59 作业打卡 2023.2.13 周一
  • 图机器学习
  • ArcGIS中ArcMap创建渔网Create Fishnet:生成指定大小的格网矢量文件
  • TensorRT中的自定义层
  • 部署智能合约到公链
  • Windows server——部署DNS服务(3)
  • 9. QML_OpenGL--2. 在QQuick中搭建加载OpenGL框架
  • 亚马逊云科技携手滴普科技,打造数据智能新标杆
  • CGO 跨平台静态编译
  • 股票买卖接口怎么来的?
  • 【Python学习笔记】29.Python3 面向对象
  • MySQL 索引
  • 学会使用LoadRunner录制脚本
  • 产品经理必看的高效产品文档撰写指南
  • Prometheus 的介绍和安装
  • ViewModel快速上手1-原生kotlin
  • Flutter(一)介绍、Dart语言简介
  • 【数据结构】---顺序表的实现
  • JavaScript刷LeetCode拿offer-经典高频40题vaScript刷LeetCode拿offer-经典高频40题
  • 动态规划,这将是你见过最详细的讲解
  • 【服务器数据恢复】FreeNAS层UFS2文件系统数据恢复案例
  • Zookeeper安装和基本使用
  • 字节面试惨败,闭关修炼再战美团(Android 面经~)