高精求助,只对了3个

P1001 A+B Problem

gordon321 @ 2023-08-12 16:25:52

#include<bits/stdc++.h>
using namespace std;
int main(){
    string a;
    string b;
    cin>>a;
    cin>>b;
    int c[1000]={0};
    int jy=0;
    int sw=0;
    int x=a.length()-1;
    int y=b.length()-1;
    for(int i=0;i<max(a.length(),b.length())+1;i++){
        if(i==max(a.length(),b.length())){
            if(jy==0){
                continue;
            }else{
                c[i]=jy;
                continue;
            }
        }
        if(a.length()>b.length()&&i>=b.length()){
            c[i]=(a[x]-48+jy)%10;
            if(a[x]-48+jy>=10){
                jy=(a[x]-48+jy)/10;
            }else{
                jy=0;
            }
        }else if(a.length()<b.length()&&i>=a.length()){
            c[i]=(b[y]-48+jy)%10;
            if(b[y]-48+jy>=10){
                jy=(b[y]-48+jy)/10;
            }else{
                jy=0;
            }
        }else{
            c[i]=(a[x]-48+b[x]-48+jy)%10;
            if(a[x]-48+b[x]-48+jy>=10){
                jy=(a[x]-48+b[y]-48+jy)/10;
            }else{
                jy=0;
            }
        }
        x--;
        y--;
        sw++;
    }
    for(int i=sw;i>=0;i--){
        if(i==sw&&c[i]==0){
        }else{  
            cout<<c[i];
        }
    }
    return 0;
}

by xushuxin @ 2023-09-03 16:45:40

我有一代码

#include<bits/stdc++.h>
using namespace std;
int sbccfctr(int a,int b){
    if(!a)return b;
    return sbccfctr((a&b)<<1,a^b);
}
int main(){
    int a,b;
    cin>>a>>b;
    cout<<sbccfctr(a,b)<<endl;
    return 0;
}

by __bjxx0201__ @ 2023-09-05 19:05:59

@gordon321 这道题目不需要高精度吧,直接就可以cout<<a+b;

建议不要用void函数解决。


by sapo1o @ 2024-06-25 21:48:36

@gongziwen 时隔10个月,说一句抱歉。

我是red_hair_steve


by gongziwen @ 2024-06-28 20:41:01

@sapo1o 没事,只是针对这个现象提个建议而已。对事不对人。


by sapo1o @ 2024-06-28 21:02:04

@gongziwen 嗯,那时刚学信息学3个月,当时只知道瞎bb 尽管现在也是。


上一页 |