PAT (Basic Level) Practise (中文)——1017. A除以B (20)

禁不住想写一点关于正在做的PAT的,当然是有关Python的。

 先放题目:

1017. A除以B (20)

时间限制
100 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
CHEN, Yue

本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。

输入格式:

输入在1行中依次给出A和B,中间以1空格分隔。

输出格式:

在1行中依次输出Q和R,中间以1空格分隔。

输入样例:
123456789050987654321 7
输出样例:
17636684150141093474 3


然后是AC代码:
a,b=map(int,input().split())
f=a//b
y=a%b
print(f,y)

其实,本来没想用Python写的,但是一看这是大数,用C++很麻烦,我个人又是一个很懒的人,所以就选择一种几乎不用写多少的方法(Python特别适合写大数,讲真)


先看题目↓

1000位!!!!!!!!
还有别人的吐槽--》python对大数的处理比较简单,c语言则不支持大数。

然后,想简单写一写我自己写的时候遇到的一些问题:
比如:
①python 中如何实现一行输入多个值 ?
python2的raw_input以及python3的input获取的是整行的字符串。读进来后,字符串有着著名的split可以根据分隔符拆解成子串组成的list。对于list内的对象,需要的采取转换,保留字符串的继续保留即可。对于你这个题目所描述的需求,可以写成一句话:a, b, c = map(int, raw_input().split())如果是py3,自行替换raw_input为input
作者:Coldwings
链接:https://www.zhihu.com/question/45060860/answer/131756445
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
‘’‘
原来知乎复制粘贴有链接啊,省的我待会再写引用资料了(*^▽^*)
’‘’
②python输出串、多行、数字、空格
引用自:https://www.cnblogs.com/xuefang/p/7084367.html
之前只见过print手动换行,结果现在需要一个空格……而且字符串和数字肯定不能用'+'(你问我为什么,我会告诉你我试过,然后报错了吗( ̄▽ ̄)/)
--》字符和数字可用逗号拼接,不能相加
比如,写print(a,' ',b)或者print(a,b)效果一样(a,b均为数字)
python 怎样才能不使用科学计数法
引用自:https://zhidao.baidu.com/question/2204769903083307788.html
比如我有:
f=-1e+100

我想让它转化成不带科学计数法形势的字符串,也就是有100个0的形式。
普通 str() 还是会转化成科学计数法的形式。
该怎么弄?
ANSWER:
f=-1e+100
print '%f'%f
④Python去掉小数点后的零
--》python通过floor函数舍弃小数位
引用自:http://outofmemory.cn/code-snippet/11554/python-through-floor-function
import math
print(math.floor( x ))
                                例如:x=1.2,返回1.0

                                其返回值为浮点数,如果希望返回整数,可以写成:
import math
#from outofmemory.cn
print(int(math.floor( x )))
                                输出结果:1

再有,还想保存点东西(http://www.runoob.com/python/python-numbers.html)




猜你喜欢

转载自blog.csdn.net/karen_yu_/article/details/79173162