数据转化成千进制
int op[3] = {1 , 10 , 100} ;
s = string(str) ;
d.clear() ;
for(i = s.length()-1 ; i >= 0 ; i--){
t += op[j++] * (s[i] - '0') ;
if(j == 3) { d.push_back(t) ; j = t = 0 ;}
}
if(j != 3 && t) d.push_back(t) ;
std::reverse(d.begin() , d.end()) ;
求余
int Mod(int p){
int t = 0 ;
for(vector <int>::iterator it = d.begin() ; it != d.end() ; it++){
t = t * 1000 + *it ;
if(t >= p) t %= p ;
}
return t ;
}