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

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

🌈个人主页:羽晨同学 

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

题目链接

记录详情 - 洛谷 | 计算机科学教育新生态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.lryc.cn/news/544223.html

相关文章:

  • SpringMVC (3)
  • vscode使用豆包MARSCode----集成doubao1.5 DeepSeekR1 DeepseekV3模型的ai编程插件
  • Ubuntu 下 nginx-1.24.0 源码分析 - ngx_buf_t
  • 分布式开源协调服务之zookeeper
  • ubuntu系统安装playhouse三方库
  • 【星云 Orbit-F4 开发板】04.一触即发:GPIO 外部中断
  • 笔记二:整数和浮点数在内存中存储
  • PyQT(PySide)的上下文菜单策略设置setContextMenuPolicy()
  • BladeX框架接口请求跨域
  • 如何在Apple不再支持的MacOS上安装Homebrew
  • 本地大模型编程实战(26)用langgraph实现基于SQL数据构建的问答系统(5)
  • 数据结构与算法:滑动窗口
  • 江协科技/江科大-51单片机入门教程——P[2-1] 点亮一个LED
  • leetcode hot 100 41. 缺失的第一个正数
  • UniApp 使用 u-loadmore 完整步骤
  • 设置电脑一接通电源就主动开机
  • 优艾智合机器人日本子公司成立,加速推进国际化布局
  • 自然语言处理NLP入门 -- 第七节预训练语言模型
  • Git GitHub基础
  • 多平台文章同步工具PostSync 安装介绍
  • PXE批量网络装机与Kickstart自动化安装工具
  • css的复合选择器
  • Wireshark Lua 插件教程
  • mysql怎样优化where like ‘%字符串%‘这种模糊匹配的慢sql
  • Python代码片段-断点任务
  • mapbox基础,使用geojson加载heatmap热力图层
  • 03.检测 Zabbix agent
  • Vue 3 + Vite 项目配置访问地址到服务器某个文件夹的解决方案
  • JavaScript将:;隔开的字符串转换为json格式。使用正则表达式匹配键值对,并构建对象。多用于解析cssText为style Object对象
  • MT-Metrics