高精度除单精度
2016-03-18 23:36
399 查看
高精度除单精度
传入参数约定:传入第一参数为string类型,第二个为int型,返回值为string类型
算法思想:模拟手工除法。
算法复杂度:o(n).
#include<iostream> #include<algorithm> using namespace std; string div(string a,int b)//高精度a除以单精度b { string r,ans; int d=0; if(a=="0") return a;//特判 for(int i=0;i<a.size();i++) { r+=(d*10+a[i]-'0')/b+'0';//求出商 d=(d*10+(a[i]-'0'))%b;//求出余数 } int p=0; for(int i=0;i<r.size();i++) if(r[i]!='0') {p=i;break;} return r.substr(p); } int main() { string a; int b; while(cin>>a>>b) { cout<<div(a,b)<<endl; } return 0; }
相关文章推荐
- Android 全屏显示
- HDU1711 KMP的应用
- JAVA对象的属性值自动维护
- Android全屏启动页进入非全屏activity界面部分内容被状态栏遮住
- zoj--1951 Goldbach's Conjecture(math)
- Java day06 接口interface
- 怎么有效锻炼自己的记忆力?
- offline .net3.5
- MVP模式在Android中的使用
- 和为S的两个数字
- android学习笔记——ListView的使用
- Android四大组件之Service复习笔记
- Linux修改mac地址
- 如何诊断和解决high version count
- 构建乘积数组
- Java transient关键字使用小记
- 高精度乘单精度
- CSS3布局相关样式学习
- 使用 __weak typeof(self) weakSelf = self 在代码块内部崩溃问题
- 实现一个通讯录;