Files
python/TangDou/LuoGuBook/P1480.cpp

41 lines
1.0 KiB
C++
Raw Normal View History

2025-08-30 18:35:01 +08:00
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
/**
* 注意:用例:9000000000 1000000000
* 此时,因为涉及到乘法计算,使用int会爆掉,在洛谷提交会最后一个点无法通过,全部使用LL后可以正常通过测试点。
*/
using namespace std;
/**
* 功能:高精度除法模板(高精除低精)
* @param A
* @param b
* @param r
* @return
*/
vector<LL> div(vector<LL> &A, LL b, LL &r) {
vector<LL> C;
r = 0;
for (int i = A.size() - 1; i >= 0; i--) {
r = r * 10 + A[i];
C.push_back(r / b);
r %= b;
}
reverse(C.begin(), C.end());
while (C.size() > 1 && C.back() == 0) C.pop_back();
return C;
}
int main() {
string a;
LL b, r;
cin >> a >> b;
vector<LL> A, C;
for (int i = a.size() - 1; i >= 0; i--)A.push_back(a[i] - '0');
C = div(A, b, r);
for (int i = C.size() - 1; i >= 0; i--)printf("%d", C[i]);
// printf("\n%d", r);
return 0;
}