3 条题解
-
1杨时欢 (yangshihuan) LV 6 @ 2024-7-26 10:58:29
A+B Problem题解
新用户强烈建议阅读此帖
首先我们要理清思路
1.需要用到什么样的头文件?
2.用什么样的数据范围?
3.思路是什么?
首先题目中的数据范围是1≤a,b≤10^6, 而int 的范围是-2147483648-2147483647 正合题意,所以数据类型可以用int
话不多说,直接上代码
#include<iostream>//导入头文件,iostream里面是标准输入输出流(我说的什么?) using namespace std;//使用标准命名空间 int main(){//主函数,程序的入口 int a,b;//创建a,b两个整型变量 cin>>a>>b;//输入 a , b 两个变量 cout<<a+b; //输出a+b的内容 return 0; }
本蒟蒻发的第一篇题解,请多多支持喵~~
-
02024-9-17 15:34:36@
我发高精度怎么了#include <iostream>using namespace std;#define ll long longconst int N =1e5+10;const int INF =0x3f3f3f3f;string a,b;int a1[N],b1[N],c1[N],lena,lenb,lenc,x;int main(){cin>>a>>b;lena=a.size();lenb=b.size();for(int i=0;i<lena;i++){a1[i]=a[lena-i-1]-'0';}for(int i=0;i<lenb;i++){b1[i]=b[lenb-i-1]-'0';}lenc=max(lena,lenb);for(int i=0;i<lenc;i++){c1[i]=a1[i]+b1[i]+x;x=c1[i]/10;c1[i]%=10;}c1[lenc]=x;while(c1[lenc]==0&&lenc>0){lenc--;}for(int i=lenc;i>=0;i--){cout<<c1[i];}return 0;}
-
02024-9-14 22:25:13@
高精度加法
新人不会康林一个人 @杨时欢 俩提交都AC
阿米诺斯亲放心食用#include<bits/stdc++.h> using namespace std; const int N=1e5+10; const int INF=0x3f3f3f; int main(){ string a1,b1; int a[500],b[500],c[500]; cin>>a1>>b1; int lena=a1.size(); int lenb=b1.size(); for(int i=0;i<lena;i++){ a[lena-i]=a1[i]-'0'; } for(int i=0;i<lenb;i++){ b[lenb-i]=b1[i]-'0'; } int lenc=1,x=0; while(lenc<=lena || lenc<=lenb){ c[lenc]=a[lenc]+b[lenc]+x; x=c[lenc]/10; c[lenc]=c[lenc]%10; lenc++; } if(x>0){ c[lenc]=x; } else{ lenc--; } for(int i=lenc;i>=1;i--) cout<<c[i]; cout<<endl; return 0; }
提示:此代码可提交题@@高精度加法***
- 1
信息
- ID
- 1
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 3894
- 已通过
- 1061
- 上传者