一起挑战pythontip的题目(35)

简介: 一起挑战pythontip的题目(35)

第 171 题:计算两点间的距离


题目描述:


给你平面上两个点的坐标(x1, y1), (x2, y2), 请你计算并输出它们之间的距离,结果保留到小

数点后两位。


例如:x1=0, y1=0, x2=0, y2=1

则输出:1.00 示例:

输入:x1 = 0

y1 = 0

x2 = 0

y2 = 1

输出:1.00

>>> x1, y1, x2, y2 = 0,0,0,1
>>> '%.2f'%((x1-x2)**2+(y1-y2)**2)**0.5
'1.00'
>>> x1, y1, x2, y2 = 1,1,4,5
>>> '%.2f'%((x1-x2)**2+(y1-y2)**2)**0.5
'5.00'
>>> x1, y1, x2, y2 = -1,-2,11,3
>>> '%.2f'%((x1-x2)**2+(y1-y2)**2)**0.5
'13.00'
>>> 


============================================================

第 172 题:绝对值排序


题目描述:


给你一个列表 L, 对 L 按照绝对值从大到小排序,如果两个数绝对值相同,请将正数排在前

面。


输出排序后的列表,元素之间以一个空格分隔。


例如:L = [3,-4,2]

则输出:-4 3 2 示例:

输入:L = [4, 2, 25, -7777777, -100, 3, 157, 77777777, 367, -2]

输出:77777777 -7777777 367 157 -100 25 4 3 2 -2


>>> L = [4, 2, 25, -7777777, -100, 3, 157, 77777777, 367, -2]
>>> sorted(L,key=lambda x:(abs(x),x),reverse=True)
[77777777, -7777777, 367, 157, -100, 25, 4, 3, 2, -2]
>>> L.sort(key=lambda x:(abs(x),x),reverse=True)
>>> L
[77777777, -7777777, 367, 157, -100, 25, 4, 3, 2, -2]
>>> 



============================================================

第 173 题:本原串


题目描述:


由0和1组成的串中,不能被分解为多个相同子串的字符串称为本原串。例如,100100不是本原串,因为它能被分解为两个100;而1101是本原串,因为它不能被分解为多个相同的子串。请你计算长度为n(0<n<=100000000)的0-1串中,有多少个本原串?由于最终的结果可能会很大,因此请输出答案%2017(答案数取模2017)。


例如: n = 1, 则输出:2

n =2, 则输出:2

说明:长度为 1 的本原串有两个,分别为"0"、"1"; 长度为 2 的本原串也有两个,分别"01"、"10"。

============================================================

第 174 题:矩形个数


题目描述:


给你一个高为n (0 < n < 100),宽为m(0 < m < 100)列的网格,计算出这个网格中有共多少个矩形?

例如:


n = 1, m = 2 时,输出:3

n = 2, m = 4 时,输出:30  


>>> func=lambda n,m:sum(range(1, n+1))*sum(range(1, m+1))
>>> n,m = 1,2
>>> func(n,m)
3
>>> n,m = 2,4
>>> func(n,m)
30
>>> 


============================================================

第 175 题:汉诺塔


题目描述:


描述在印度,有这么一个古老的传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块

黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上

地穿好了由大到小的 64 片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按

照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧

侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹

雳中消灭,而梵塔、庙宇和众生也都将同归于尽。现在请你计算出起始有 n 个金片的汉诺塔

金片全部移动到另外一个针上时需要移动的最少步数是多少?输入每组测试数据是一个整

数 n,表示起始时金片的个数。(0 输出输出把金片起始针上全部移动到另外一个针上需要移

动的最少步数。


示例:


输入:n = 3

输出:7


print(2**n - 1)


目录
相关文章
一起挑战pythontip的题目(36-1)
一起挑战pythontip的题目(36-1)
57 0
一起挑战pythontip的题目(8)
一起挑战pythontip的题目(8)
70 0
|
数据安全/隐私保护
一起挑战pythontip的题目(7)
一起挑战pythontip的题目(7)
73 0
|
算法 测试技术 定位技术
一起挑战pythontip的题目(20)
一起挑战pythontip的题目(20)
91 0
|
Python
一起挑战pythontip的题目(12)
一起挑战pythontip的题目(12)
70 0
|
存储
一起挑战pythontip的题目(33)
一起挑战pythontip的题目(33)
134 0
一起挑战pythontip的题目(19)
一起挑战pythontip的题目(19)
70 0
|
Python
一起挑战pythontip的题目(34)
一起挑战pythontip的题目(34)
89 0
|
机器学习/深度学习 Python
一起挑战pythontip的题目(24)
一起挑战pythontip的题目(24)
92 0
|
存储
一起挑战pythontip的题目(18)
一起挑战pythontip的题目(18)
65 0