高精除这东西比较玄学,据说只会考到高精除单精(dalao说就算考到高精除高精也不会有人敲的完的,so只讲了高精除单精)
高精除单精,就是模拟人算(高精除高精是用减法模拟),用被除数每一位上的数除以除数,若有余数就*10再加到下一位上去,一直到最后一位
加减乘除不在一起的高精是不完美滴,so强行安利蒟蒻的高精加减乘
代码如下:
#include<iostream> #include<cstdio> #include<cmath> #include<cstring> using namespace std; char e[1001]; int n,a[1001],c[1001]; int main() { scanf("%s",e); int k=strlen(e); scanf("%d",&n); for(int i=k;i>=k;i--) {a[i]=e[k-i]-48; } for(int i=k;i>=1;i--) { c[i]=a[i]/n; a[i]%=n; a[i-1]+=a[i]*10; } while(c[k]==0&&k>1)k--; for(int i=k;i>=1;i--) printf("%d",c[i]); }