題目傳送門
/*
我的**水平可以說是很爛了。。。
又臭又長的ac**
*/#include #include #include #include #define maxn 10010//數字的最大長度
using namespace std;
//char s1[maxn], s2[maxn];
string s1, s2;
int len1 = 0;//用來計算兩個數串的長度
int len2 = 0;
int num1[maxn], num2[maxn], number[maxn];
void add(string x, string y) }}
void subtract(string x, string y)
} }else if (len2>len1)
}} else
else
if (flag)
}} else
}} }
}int main(void)
//接下來分兩種情況都是屬於異號,分別是第乙個數是負數和第二個數是負數的情況
else if (s1[0] == '-')
else if (s1[i + 1] < s2[i])
} else//只要兩者不相等都是true
ok = true;
subtract(s1, s2);
if (!ok)
printf("0");
else
}else if (s2[0] == '-')
else if (s1[i] > s2[i + 1])
} else
ok = true;
subtract(s2, s1);
if (!ok)
printf("0");
else
}else
//system("pause");
return 0;
}
51Nod 1005 大數加法
今天遇見一道細節問題特別多的題,寫得我眼疼,題本身不難,難得是他的細節問題繁多,需要考慮的情況也甚多,稍有不慎就側漏了,哈哈。題的思路也很清晰,就是將最後的結果的正負的符號分離出來,剩下的就是高精度的加減法了,利用字串處理即可,效率可以很高很高,有多高呢?自己感覺吧!題 給出2個大整數a,b,計算a...
51nod 1005 大數加法
給出2個大整數a,b,計算a b的結果。input 第1行 大數a 第2行 大數b a,b的長度 10000 需注意 a b有可能為負數 output 輸出a binput示例 68932147586 468711654886output示例 537643802472純粹的模擬,主要分一下幾種情況 ...
51nod 1005 大數加法
1005 大數加法 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 給出2個大整數a,b,計算a b的結果。input 第1行 大數a 第2行 大數b a,b的長度 10000 需注意 a b有可能為負數 output 輸出a binput示例 68932147586 4...