核心代码:
for (i = len - 1, j = 0; i >= 0; i--, j++) {
r = r * 10 + a[i];
b[j] = r / p;
r %= p;
}
全部代码:
#include<iostream>
#include<cstring>
using namespace std;
const int N = 1e5 + 100;
int a[N], b[N] = {0};
int r=0;
int main() {
string q;
int p;
cin >> q >> p;
int i, j;
int len = q.length();
if (len == 1 && q[0] == '0') {
cout << 0 << endl << 0;
}
else {
for (i = len - 1, j = 0; i >= 0; i--, j++) {
a[j] = q[i] - '0';
}
for (i = len - 1, j = 0; i >= 0; i--, j++) {
r = r * 10 + a[i];
b[j] = r / p;//b[0]高位
r %= p;
}
i = 0;
while (b[i] == 0 && i+1 < len)
i++;
for (j = i; j < len; j++) {
cout << b[j];
}
cout << endl << r;
}
}