1017 A除以B (20 分)
2024-08-25 10:07:07
本题要求计算 /,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R成立。
输入格式:
输入在一行中依次给出 A 和 B,中间以 1 空格分隔。
输出格式:
在一行中依次输出 Q 和 R,中间以 1 空格分隔。
输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3
#include<cstdio>
#include<cstring>
struct bign{
int d[];
int len;
bign(){
memset(d,,sizeof(d));
len = ;
}
}; bign change(char str[]){
bign a;
a.len = strlen(str);
for(int i = ; i < a.len; i++){
a.d[i] = str[a.len - i- ] - '';
}
return a;
} bign divide(bign a,int b,int &r){
bign c;
c.len = a.len;
for(int i = a.len - ; i >= ; i--){
r = r * + a.d[i];
if(r < b) c.d[i] = ;
else{
c.d[i] = r / b;
r = r % b;
}
}
while(c.len - >= && c.d[c.len - ] == ) c.len--; //若c.len - 1 >= 0 第二个测试点不同
return c;
} void print(bign a){
for(int i = a.len - ; i >= ; i--) printf("%d",a.d[i]);
} int main(){
char str[];
int b,r = ;
scanf("%s%d",str,&b);
bign a = change(str);
print(divide(a,b,r));
printf(" %d",r);
return ;
}
最新文章
- Atom使用纪要
- MongoDB学习笔记~大叔框架实体更新支持N层嵌套~递归递归我爱你!
- Wilson定理证明
- Theos
- Unity 协程Coroutine综合测试
- Linux 下安装android
- TCP/IP详解学习笔记(7)-广播和多播,IGMP协议
- U3D版本《暗黑世界V1.0》编译——图文教程!
- Android音频开发之——如何播放一帧音频
- OpenSuse13.2安装CUDA Toolkit 7.5
- ffmpeg编译
- Andorid开发中如何去除标题栏title
- app中rem算法
- JavaScript中的数值转换
- dataGrideView的使用
- 状压dp入门
- Python网络爬虫笔记(五):下载、分析京东P20销售数据
- 工具类Utils的单元测试方式
- Git:一本书 + 一个站点,让你掌握 Git
- linux编程实现pwd命令
热门文章
- windows 2013 datacenter 安装sql server2008 r2兼容性
- Django中的事务(Transaction)管理
- 多级联动下拉菜单--cxSelect
- jqgrid--api,官网demo,编辑
- Poj 2304 Combination Lock(模拟顺、逆时钟开组合锁)
- 杂项:BI(商业智能)
- 如何在Windows平台使用VS搭建C++/Lua的开发环境
- k8s 基础(4) k8s安装
- shell入门-uniq去重复和tee重定向
- PopupWindow-----listview item的点击出现PopupWindow