当前位置 博文首页 > boysoft2002的专栏:一起挑战pythontip的题目(31)

    boysoft2002的专栏:一起挑战pythontip的题目(31)

    作者:[db:作者] 时间:2021-07-11 12:40

    第 151 题:全排列序列
    题目描述:数字集合[1,2,3, ... , n]可以组成 n!个不同的排列序列。将所有的序列按照字典序
    升序排序之后,请你输出第 k(从 1 开始)个序列。
    例如:n=3, k=4, 则输出:231
    Note:给定的 n 在 1 到 9 的范围内,k 在 1 到 n!的范围内。
    n=3 时,所有的排列序列为:
    123
    132
    213
    231
    312
    321
    示例:
    输入:n = 3
    k = 1
    输出:123

    ============================================================
    第 152 题:全排列序列 II
    题目描述:数字集合[1,2,3, ... , n]可以组成 n!个不同的排列序列。将所有的序列按照字典序
    升序排序之后,请你输出第 k 个序列。
    和上题“全排列序列”不同的是,本题给定一个包含多组(n, k)的元组列表 L,请你针对 L
    中的每组(n, k),输出其对应的结果,每个结果占一行。
    例如:L = [(3, 2), (3, 3), (3,5)], 则输出:
    132
    213
    312
    Note:L 中的 n 在 1 到 9 的范围内,k 在 1 到 n!的范围内。
    2016.8.13 16:00: 感谢 holidaylover 指出,本题测试数据有误,已修改,原来不能通过的代码
    可以尝试再次提交。示例:
    输入:L = [[3, 1], [3, 2], [3, 3], [3, 4], [3, 5], [3, 6]]
    输出:123
    132
    213
    231
    312
    321
    ============================================================
    第 153 题:最小路径和
    题目描述:给你一个由非负整数组成的矩阵 M,请你找到一条从矩阵左上角到右下角的路
    径,使其和最小,并输出最小路径的和(注意:每次只能向右走或者向下走)。
    例如:
    M = [[1, 2, 3],
    [1, 2, 3],
    [1, 3, 3]]
    则输出:9
    说明:最小路径上的值分别为(1->1->1->3->3)。
    示例:
    输入:M = [[1, 2, 3], [1, 2, 3], [1, 2, 3]]
    输出:8
    ============================================================
    第 154 题:生成括号序列
    题目描述:给你一个正整数 n,请你生成所有包含 n 对小括号的合法括号序列,分别将合法
    的序列按照字典序升序 输出,每个序列占一行。
    例如,n=3, 则输出:
    ((()))
    (()())
    (())()
    ()(())
    ()()()


    ============================================================
    第 155 题:消失的硬盘容量
    题目描述:我们经常发现,购买的硬盘上标注的容量比系统显示的要少。比如,你买了 100MB
    的硬盘,插到电脑上,操作系统却显示硬盘的大小只有 95MB,这 5MB 消失了。这是因为
    硬盘的制造商认为"一千" 是 1000,但是操作系统认为"一千"是 1024。有几个描述硬盘大小
    的单位,他们是 byte, kilobyte, megabyte, gigabyte, terabyte, petabyte, exabyte, zetabyte and
    yottabyte。
    每一个都是等于前一个的"一千"倍。举个例子 1 gigabyte 是 "一千" megabytes,比如制造商
    认为 1 gigabyte 是 1000* 1 megabytes. 操作系统认为 1 gigabyte 是 1024* 1 megabytes.现
    在你知道一个由制造商代表的硬盘的大小(也就是制造商认为的硬盘的大小),你想计算百
    分比的"丢失的部分"。
    单位分别有“B”, “KB”, “MB”, “GB”, “TB”, “PB”, “EB”, “ZB”, “YB” 。
    给你一个字符串列表 D,其中每个字符串表示一块硬盘的容量(厂商标注的容量,格式见样
    例),请你计算每块硬盘丢失的容量百分比,保留两位小数(具体见样例)。
    例如:
    D = ['100[MB]', '1[B]']
    则输出:
    Case #1: 4.63%
    Case #2: 0.00%
    ============================================================

    来源:

    Python 爬取pythontip网站的挑战题目(附全部题目178题)

    cs