60求调
查看原帖
60求调
929086
huanxue楼主2023/12/24 17:49
#include <iostream>
#include <string>
using namespace std;

int main(){
    string s1,s2;
	cin >> s1 >> s2;
	long long a[200005] = {}, b[200005] = {}, c[200005] = {};
	int len1 = s1.size() ;
	int len2 = s2.size() ;
	int len3 = max(len1 , len2)  ;
    if(len1 < len2 || (len1 == len2 && s1 < s2) ){
      swap(s1 , s2);
      cout << "-";  
    }
	
	for(int i = 0; i <= len1 - 1; i++) 
	  a[i] = s1[len1 - i - 1] - '0' ;  
	for(int i = 0; i <= len2 - 1; i++) 
	  b[i] = s2[len2 - i - 1] - '0' ;

	int jie = 0; 
	for(int i = 0; i < len3; i++){
      c[i] = a[i] - b[i] - jie       ; 
    
      if(c[i] < 0) {
        jie =  1 ; 
        c[i] += 10;
      }else{
        jie = 0  ;  
      }
    
	}
	while(1){
	  if(c[len3 - 1] != 0 || len3 == 1){  
	     break;
      }
      len3--;
	}

	for(int i = len3 - 1 ; i >= 0  ; i-- ) {
		cout << c[i];
	}
	
	return 0;
}

2023/12/24 17:49
加载中...