蓝桥杯好题推荐-----高精度减法

server/2025/3/4 22:21:31/

🌈个人主页:羽晨同学 

 💫个人格言:“成为自己未来的主人~” 

题目链接

记录详情 - 洛谷 | 计算机科学教育新生态https://www.luogu.com.cn/record/205122671

思路讲解

这个题目的解题思路,其实是和高精度加法是非常像的。怎么说呢,其实开始的时候,由于范围受限的原因,所以我们必须把数字存到字符串中,然后用倒序,存到数组中,然后进行高精度减法,进行高精度减法的时候,我们可以逐个相减,然后如果减下的数字小于0,那么+10,前一位减一,最终从非0的第一位开始输出。

代码实现

/*高精度减法*/
#include<iostream>
#include<string>
using namespace std;
const int N = 1e6+10;
int a[N],b[N],c[N];
typedef long long LL;
LL la,lb,lc;
void sub(int a[],int b[],int c[])
{for(int i=0;i<lc;i++){c[i]+=a[i]-b[i];if(c[i]<0){c[i]+=10;c[i+1]--;}}if(c[lc-1]==0) lc--;while(c[lc]==0){if(lc==0){break;}lc--;}
}
int main()
{string x,y;cin>>x>>y;//默认x比y大if((y.size()>x.size())||(y.size()==x.size()&&y>x)){swap(x,y);cout<<"-";}la=x.size();lb=y.size();lc=max(la,lb); for(int i=x.size()-1;i>=0;i--) a[la-1-i]=x[i]-'0';for(int i=y.size()-1;i>=0;i--) b[lb-1-i]=y[i]-'0';sub(a,b,c);for(int i=lc;i>=0;i--) cout<<c[i];return 0;
}

 好了,今天的内容就到这里,我们明天再见。


http://www.ppmy.cn/server/171927.html

相关文章

机器学习——李航(实验)笔记第一二章

plt.plot(x_points,fit_func(p_lsq[0],x_points),labelfitted curve) result leastsq(residuals_func, initial_params, args(x_data, y_data)) regularization0.00001 #较小的λ值意味着正则化作用较弱&#xff0c;模型可能仍然会过拟合&#xff1b;较大的λ值则可能导致模型…

中科大《计算机网络》1.1什么是Internet笔记

什么是Internet 1. 网络核心概念与术语‌ ‌1.1 网络与互联网的本质区别‌ ‌对比维度‌‌网络&#xff08;Network&#xff09;‌‌互联网&#xff08;Internet&#xff09;‌‌定义‌任意互连的计算设备集合&#xff08;如局域网&#xff09;由多个网络通过路由器互联形成…

cookieParser 依赖详解

cookie-parser 是一个用于在 Express.js 中解析 HTTP Cookie 的 Node.js 中间件。它将 Cookie 字符串解析为 JavaScript 对象&#xff0c;使开发者能够方便地在 Express 应用中访问和操作 Cookie。 一、安装 npm install cookie-parser二、基本使用 const express require(…

飞鱼科技游戏策划岗内推

协助策划完成相关工作&#xff0c;包括但不仅限于策划配置&#xff0c;资料搜集&#xff0c;游戏体验&#xff1b; 游戏策划相关作品&#xff1b;游戏大赛经历&#xff1b;游戏demo制作经历&#xff1b;游戏公司策划岗位实习经历优先 内推码 DSZP7YFU

Opencv 图像梯度计算

4.1 Sobel算子 Sobel算子主要计算图像在水平和垂直方向上的梯度&#xff0c;从而检测图像中的边缘。 Sobel算子通过两个33的卷积核分别计算水平方向和垂直方向的梯度&#xff1a; G x [ − 1 0 1 − 2 0 2 − 1 0 1 ] ∗ A and G y [ − 1 − 2 − 1 0 0 0 1 2 1 ] …

2020年蓝桥杯Java B组第二场题目+部分个人解析

#A&#xff1a;门牌制作 624 解一&#xff1a; public static void main(String[] args) {int count0;for(int i1;i<2020;i) {int ni;while(n>0) {if(n%102) {count;}n/10;}}System.out.println(count);} 解二&#xff1a; public static void main(String[] args) {…

tableau之雷达图和凹凸图

一、雷达图 概念 雷达图&#xff08;Radar Chart&#xff09;&#xff0c;也称为蜘蛛网图&#xff08;Spider Chart&#xff09;或星状图&#xff08;Star Chart&#xff09;&#xff0c;是一种用于多变量数据可视化的图表。它以中心点向外辐射的轴线表示不同的变量&#xff…

DeepSeek 助力 Vue 开发:打造丝滑的分割线(Divider)

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 Deep…