zoukankan      html  css  js  c++  java
  • 高精度减法

    敲代码要敲疯了!!

    不怕难,就怕烦。。。

    好了,很晚了,明天就开学了

    22:30

    //高精度减法——Crazily
    #include<bits/stdc++.h>
    using namespace std;
    char a[100001],b[100001];
    int  e[100000],d[100001];
    int c[100001]={0};
    int i,j,x,y,z,p,q,o;
    bool f(){
        for(register int i=0;i<x;i++){
            if(a[i]!='0')
            return false;
        }
        for(register int i=0;i<y;i++){
            if(b[i]!='0')
            return false;
        }
        return true;
    }
    int main(){   
        q=0;
        cin>>a>>b;    
        x=strlen(a);  
        y=strlen(b);   
        if(f()){
            cout<<0;
            return 0;
        }
        if(x>y){
            p=x;
            q=1;
        }
        else
        p=y;
        for(i=x-1,j=0;i>=0,j<=x-1;i--,j++)  
        e[j]=a[i]-'0';    
        for(i=y-1,j=0;i>=0,j<=y-1;i--,j++)
        d[j]=b[i]-'0';   
        if(x==y){    
        q=1;
            for(i=p-1;i>=0;i--)
               if(e[i]<d[i]){
                    q=0;
                    break;  
                 }    
         }
        for(i=0;i<p;i++){
            if(q==1) 
            c[i]=e[i]-d[i];
            else
            c[i]=d[i]-e[i];   
        }  
        if(q==0)  
          cout<<"-";
        for(i=0;i<p;i++){
            if(c[i]<0){
                c[i]+=10; 
                c[i+1]-=1;
            }       
        }
           o=p;      
        for(i=p;i>=0;i--){
            if(c[i]!=0)
                 break; 
                 o=o-1;
                if(i==0&&c[i]==0){
                     o=0;
                     break;
                }
        }
           for(i=o;i>=0;i--)  
           cout<<c[i];
    }

    这段代码就不做详细解析了

    我也去睡了

    好梦O(∩_∩)O

  • 相关阅读:
    HDU 6034
    HDU 6047
    CodeForces 830B
    HDU 4972
    HDU 4408
    CodeForces 788B
    CodeForces 788A
    CodeForces 792C
    uva 1658 Admiral 最小费最大流
    hdu 5391 Zball in Tina Town 威尔逊定理
  • 原文地址:https://www.cnblogs.com/crazily/p/9563121.html
Copyright © 2011-2022 走看看