P 1017
转跳点:
本题要求计算A /B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。
输入格式:
输入在一行中依次给出 A 和 B,中间以 1 空格分隔。
输出格式:
在一行中依次输出 Q 和 R,中间以 1 空格分隔。
输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3
终于升级到大整数操作了,内心一阵阵激动,认真看题就知道输入样例那玩意绝对超过了264了,斗宗强者恐怖至斯。int已经无法驾驭它了,我们需要开挂了。决定就是你了,去吧,字符串!
其实所谓的大数操作就是在模拟人手算的过程,而且这道题是化简后的大数除法。没有小数处理,直接取余数,除数只有一位大大削减了题目难度。只有两个要注意的点:
1.最高位小于除数时,需要对字符串的长度进行判断,如果长度位1则输出,否则跳过
2.记得每次取余和除法之前要加上余数,记得乘上10
唉,要是真的是大整数除法,就有点烧脑了,大家先自己写写,再看代码。(考虑要不要更一波大整数运算……)
代码:
C:
1 #include <stdio.h>
2 #include <stdlib.h>
3 #define MAXSIZE 1010
4
5 int main(void)
6 {
7 int Number, Quotient, Remainder;
8 char NumStr[MAXSIZE];
9
10 scanf("%s%d", NumStr, &Number);
11
12 Quotient = (NumStr[0] - '0') / Number;
13 if ((Quotient != 0 && NumStr[1] != '\0') || '\0' == NumStr[1])//特判第一位小于除数输出0 和 只有一位数的情况
14 {
15 printf("%d", Quotient);
16 }
17 Remainder = (NumStr[0] - '0') % Number;
18
19 //模拟带除法
20 for (int i = 1; '\0' != NumStr[i]; i++)
21 {
22 Quotient = (Remainder * 10 + NumStr[i] - '0') / Number; //取商,每一次需要加上上一位的余数
23 printf("%d", Quotient); //直接输出,懒得存储了
24 Remainder = (Remainder * 10 + NumStr[i] - '0') % Number;//取余,也需要加上上一位的余数
25 }
26 printf(" %d\n", Remainder);
27 return 0;
28 }
C
Python:
1 listt = list(input().split())
2 print(int(listt[0]) // int(listt[1]), end = ' ')
3 print(int(listt[0]) % int(listt[1]))
想哭(我想弃坑)
PAT不易,诸君共勉!
P 1017的更多相关文章
- HUST 1017 - Exact cover (Dancing Links 模板题)
1017 - Exact cover 时间限制:15秒 内存限制:128兆 自定评测 5584 次提交 2975 次通过 题目描述 There is an N*M matrix with only 0 ...
- Dancing Link --- 模板题 HUST 1017 - Exact cover
1017 - Exact cover Problem's Link: http://acm.hust.edu.cn/problem/show/1017 Mean: 给定一个由0-1组成的矩阵,是否 ...
- POJ 1017
http://poj.org/problem?id=1017 题意就是有6种规格的物品,给你一些不同规格的物品,要求你装在盒子里,盒子是固定尺寸的也就是6*6,而物品有1*1,2*2,3*3,4*4, ...
- 递推DP URAL 1017 Staircases
题目传送门 /* 题意:给n块砖头,问能组成多少个楼梯,楼梯至少两层,且每层至少一块砖头,层与层之间数目不能相等! 递推DP:dp[i][j] 表示总共i块砖头,最后一列的砖头数是j块的方案数 状态转 ...
- PAT乙级 1017. A除以B (20)
1017. A除以B (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求计算A/B,其中A是不超过 ...
- 【BZOJ】【1017】【JSOI2008】魔兽地图Dotr
树形DP 一开始想:f[i][j]表示以 i 为根的子树,花 j 块钱能得到的最高力量值,结果发现转移的时候没法保证叶子结点的数量限制TAT 只好去膜拜题解了……在这里贴两篇泛型背包的文章吧:< ...
- poj 1017 Packets 裸贪心
Packets Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 43189 Accepted: 14550 Descrip ...
- HUST 1017 Exact cover (Dancing links)
1017 - Exact cover 时间限制:15秒 内存限制:128兆 自定评测 6110 次提交 3226 次通过 题目描述 There is an N*M matrix with only 0 ...
- PAT-乙级-1017. A除以B (20)
1017. A除以B (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 本题要求计算A/B,其中A是不超过 ...
- PAT 1017
1017. Queueing at Bank (25) Suppose a bank has K windows open for service. There is a yellow line in ...
随机推荐
- body滚动时左侧菜单固定
var top = $(".nav-frame").offset().top $(document).scroll(function(){ if($(this).scrollTop ...
- SciPy 统计
章节 SciPy 介绍 SciPy 安装 SciPy 基础功能 SciPy 特殊函数 SciPy k均值聚类 SciPy 常量 SciPy fftpack(傅里叶变换) SciPy 积分 SciPy ...
- greenplum 导入数据方式
参考: http://gpdb.docs.pivotal.io/4390/admin_guide/load/topics/g-working-with-file-based-ext-tables.ht ...
- windows制作动态链接库和使用二
动态库的另一种制作方法: 不使用_declspec(dllexport)关键字,使用.def文件 //exportFun.def 文件名随意 EXPORT add @ //格式 函数名 @编号 < ...
- 云时代架构阅读笔记十四——我对Hash算法的理解
Hash,一般翻译做“散列”,也有直接音译为“哈希”的,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值.这种转换是一种压缩映射,也就是 ...
- DRF项目之自定义分页器
在项目中,我们多需要自定义分页器. 代码实现: class PageNum(PageNumberPagination): '''自定义分页器''' # 每页显示个数 page_size = 10 pa ...
- dataGridView与数据源dataTable同步排序
private void dataGridView1_Sorted(object sender, EventArgs e) { string _sortStr ...
- Educational Codeforces Round 63 选做
D. Beautiful Array 题意 给你一个长度为 \(n\) 的序列.你可以选择至多一个子段,将该子段所有数乘上给定常数 \(x\) .求操作后最大的最大子段和. 题解 考虑最大子段和的子段 ...
- java注解——内置注解和四种元注解
java内置注解: @Override(重写方法):被用于标注方法,用于说明所标注的方法是重写父类的方法 @Deprecated(过时方法):用于说明所标注元素,因存在安全问题或有更好选择而不鼓励使用 ...
- JAVA String类常用方法
一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...