3 条题解

  • 1
    @ 2023-5-13 10:29:16

    `` #include<bits/stdc++.h> using namespace std; const int maxn=1005; string a1,b1; int a[maxn],b[maxn],c[maxn],fa,fb,lena,lenb,lenc; void abb(int x[],int y[]){ lenc=max(x[0],y[0]); for(int i=1;i<=lenc;i++){ c[i]=c[i]+x[i]+y[i]; if(c[i]>9){ c[i]=c[i]%10; c[i+1]++; } } if(c[lenc+1]!=0) lenc++; for(int i=lenc;i>=1;i--) cout<<c[i]; } void jian(int x[],int y[]){ lenc=x[0]; for(int i=1;i<=lenc;i++){ if(x[i]<y[i]){ x[i+1]--; x[i]=x[i]+10; } c[i]=x[i]-y[i]; } while(c[lenc]0) lenc--; for(int i=lenc;i>=1;i--) cout<<c[i]; } int main(){ cin>>a1>>b1; if(a1b1){ cout<<0; return 0; } if(a1[0]'-'){ fa=1; a1.erase(0,1); } if(b1[0]'-'){ fb=1; b1.erase(0,1); } a[0]=a1.size(); for(int i=1;i<=a[0];i++){ a[i]=a1[a[0]-i]-'0'; } b[0]=b1.size(); for(int i=1;i<=b[0];i++) b[i]=b1[b[0]-i]-'0';

    if(fa==0 && fb==0){
    	if(a[0]<b[0] ||(a[0]==b[0] && a1<b1)){
    		cout<<"-";
    		jian(b,a);
    	}else jian(a,b);
    } 
    if(fa==0 && fb==1){
    	abb(a,b);
    }
    if(fa==1 && fb==1){
    	if(a[0]>b[0]||(a[0]==b[0]&&a1>b1)){
    		cout<<'-';
    		jian(a,b);
    	}else jian(b,a);
    }
    if(fa==1 && fb==0){
    	cout<<"-";
    	abb(a,b); 
    }
    return 0;
    

    }

    ``

    • 1
      @ 2023-5-13 10:23:11

      #include<bits/stdc++.h> using namespace std; const int maxn=1005; string a1,b1; int a[maxn],b[maxn],c[maxn],fa,fb,lena,lenb,lenc; void abb(int x[],int y[]){ lenc=max(x[0],y[0]); for(int i=1;i<=lenc;i++){ c[i]=c[i]+x[i]+y[i]; if(c[i]>9){ c[i]=c[i]%10; c[i+1]++; } } if(c[lenc+1]!=0) lenc++; for(int i=lenc;i>=1;i--) cout<<c[i]; } void jian(int x[],int y[]){ lenc=x[0]; for(int i=1;i<=lenc;i++){ if(x[i]<y[i]){ x[i+1]--; x[i]=x[i]+10; } c[i]=x[i]-y[i]; } while(c[lenc]0) lenc--; for(int i=lenc;i>=1;i--) cout<<c[i]; } int main(){ cin>>a1>>b1; if(a1b1){ cout<<0; return 0; } if(a1[0]'-'){ fa=1; a1.erase(0,1); } if(b1[0]'-'){ fb=1; b1.erase(0,1); } a[0]=a1.size(); for(int i=1;i<=a[0];i++){ a[i]=a1[a[0]-i]-'0'; } b[0]=b1.size(); for(int i=1;i<=b[0];i++) b[i]=b1[b[0]-i]-'0';

      if(fa==0 && fb==0){
      	if(a[0]<b[0] ||(a[0]==b[0] && a1<b1)){
      		cout<<"-";
      		jian(b,a);
      	}else jian(a,b);
      } 
      if(fa==0 && fb==1){
      	abb(a,b);
      }
      if(fa==1 && fb==1){
      	if(a[0]>b[0]||(a[0]==b[0]&&a1>b1)){
      		cout<<'-';
      		jian(a,b);
      	}else jian(b,a);
      }
      if(fa==1 && fb==0){
      	cout<<"-";
      	abb(a,b); 
      }
      return 0;
      

      }

      • 0
        @ 2023-5-13 10:28:12
        #include<bits/stdc++.h>
        using namespace std;
        const int maxn=1005;
        string a1,b1;
        int a[maxn],b[maxn],c[maxn],fa,fb,lena,lenb,lenc;
        void abb(int x[],int y[]){
        	lenc=max(x[0],y[0]);
        	for(int i=1;i<=lenc;i++){
        		c[i]=c[i]+x[i]+y[i];
        		if(c[i]>9){
        			c[i]=c[i]%10;
        			c[i+1]++;
        		}
        	}
        	if(c[lenc+1]!=0) lenc++;
        	for(int i=lenc;i>=1;i--)
        	cout<<c[i];
        }
        void jian(int x[],int y[]){
        	lenc=x[0];
        	for(int i=1;i<=lenc;i++){
        		if(x[i]<y[i]){
        			x[i+1]--;
        			x[i]=x[i]+10;
        		}
        		c[i]=x[i]-y[i];
        	}
        	while(c[lenc]==0) lenc--;
        	for(int i=lenc;i>=1;i--)
        	cout<<c[i];
        }
        int main(){
        	cin>>a1>>b1;
        	if(a1==b1){
        		cout<<0;
        		return 0;
        	}
            if(a1[0]=='-'){
            	fa=1;
            	a1.erase(0,1);
        	}
        	if(b1[0]=='-'){
        		fb=1;
        		b1.erase(0,1);
        	}
            a[0]=a1.size();
            for(int i=1;i<=a[0];i++){
            	a[i]=a1[a[0]-i]-'0';
        	}
            b[0]=b1.size();
            for(int i=1;i<=b[0];i++)
        	b[i]=b1[b[0]-i]-'0';
        	
        	if(fa==0 && fb==0){
        		if(a[0]<b[0] ||(a[0]==b[0] && a1<b1)){
        			cout<<"-";
        			jian(b,a);
        		}else jian(a,b);
        	} 
        	if(fa==0 && fb==1){
        		abb(a,b);
        	}
        	if(fa==1 && fb==1){
        		if(a[0]>b[0]||(a[0]==b[0]&&a1>b1)){
        			cout<<'-';
        			jian(a,b);
        		}else jian(b,a);
        	}
        	if(fa==1 && fb==0){
        		cout<<"-";
        		abb(a,b); 
        	}
        	return 0;
        }
        
        • 1

        信息

        ID
        942
        时间
        1000ms
        内存
        16MiB
        难度
        7
        标签
        递交数
        99
        已通过
        22
        上传者