0
点赞
收藏
分享

微信扫一扫

PTA-python~基础编程部分题

快乐与微笑的淘气 2022-04-30 阅读 45
python算法

文件目录


7-6 混合类型数据格式化输入- 5

本题要求编写程序,顺序读入浮点数1、整数、字符、浮点数2,再按照字符、整数、浮点数1、浮点数2的顺序输出。

输入格式:
输入在一行中顺序给出浮点数1、整数、字符、浮点数2,其间以1个空格分隔。

输出格式:
在一行中按照字符、整数、浮点数1、浮点数2的顺序输出,其中浮点数保留小数点后2位。

输入样例:
2.12 88 c 4.7
输出样例:
c 88 2.12 4.70
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

f1, b, c, f2 = input().split()
f1, f2 = float(f1), float(f2)
b = int(b)
print("%s %d %.2f %.2f"%(c,b,f1,f2))    # 注意字符的%s对应输出

7-4 BCD解密-10

BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!

现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。

输入格式:
输入在一行中给出一个[0, 153]范围内的正整数,保证能转换回有效的BCD数,也就是说这个整数转换成十六进制时不会出现A-F的数字。

输出格式:
输出对应的十进制数。

输入样例:
18
输出样例:
12
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
方法一:

n = int(input())
h = hex(n)
print(h[2:])    # 切片

方法二:

n = int(input())
a = n // 16
b = n % 16
c = a * 10 + b
print("%d" % c)

7-1 厘米换算英尺英寸-15

如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。

输入格式:
输入在一行中给出1个正整数,单位是厘米。

输出格式:
在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。

输入样例:
170
输出样例:
5 6
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB

n = int(input())
foot = n // 0.3048 // 100       # 注意这里用//(整除
inch = 12*(n/(0.3048*100)-foot) # 这样就可得出题目所需要的整数值
print("%d %d" % (foot, inch))


算法小抄之回溯算法–个人总结:

***回溯算法***:--纯暴力穷举,复杂度一般都很高

解决一个回溯问题, 实际上就是一个决策树的遍历过程

其核心就是for循环里面的递归,在递归调用之前“做选择”,在递归调用之后“撤销选择”。


今日一言:

五一小假期到啦, 祝大家游的开心,玩的尽兴,嘻嘻(∩_∩)。————我们每个人都有意志力,它就潜藏在我们的身边之中。当它爆发的时候,我们无往而不胜。

举报

相关推荐

0 条评论