zl程序教程

您现在的位置是:首页 >  其它

当前栏目

一起挑战pythontip的题目(19)

挑战 19 题目 一起
2023-09-14 09:01:29 时间

第91题:全排列
题目描述:给你一个仅有小写字母组成的字符串s(len(s) < 10),请你输出s内的所有字母的全排列,每行输出一个,
按照字典序升序输出。
如:s="bbjd",则输出:
bbdj
bbjd
bdbj
bdjb
bjbd
bjdb
dbbj
dbjb
djbb
jbbd
jbdb
jdbb


============================================================
第92题:解析HTML
题目描述:我们每天都在浏览网页,HTML是网页的基础,现在请你模拟解析简单的HTML代码。
我们这里定义的HTML只包括两个特殊标记和,具体的解析规则如下:
rule1:你从输入中读入的一个单词,如果这个单词和当前行已有的长度加起来不超过80,则将该单词输出到当前行,否则另起一行,将该单词输出到下一行的开头;
rule2:如果你从输入中读到的是,则换行
rule3:如果你从输入中读到的是,则另起一行输出80个'-'(如果当前正好在新行的开始,则直接输出80个'-'),并再次换行到新行的开始。
rule4:单词之间以一个空格分开。
给你一个HTML字符串html,请你输出解析之后的结果。
注意:输入的每个单词长度保证不超过80;标点符号算作前一个单词的内容,
如:字符串"abc12, kkd" 包含两个单词:"abc123,"和"kkd".保证正常的单词不会包括""。

例:
html=
'''
Hallo, dies ist eine 
ziemlich lange Zeile, die in Html
aber nicht umgebrochen wird.

Zwei   produzieren zwei Newlines. 
Es gibt auch noch das tag  was einen Trenner darstellt.
Zwei   produzieren zwei Horizontal Rulers.
Achtung       mehrere Leerzeichen irritieren

Html genauso wenig wie


mehrere Leerzeilen.
'''
解析之后,输出:
Hallo, dies ist eine ziemlich lange Zeile, die in Html aber nicht umgebrochen
wird.
Zwei

produzieren zwei Newlines. Es gibt auch noch das tag
--------------------------------------------------------------------------------
was einen Trenner darstellt. Zwei
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
produzieren zwei Horizontal Rulers. Achtung mehrere Leerzeichen irritieren Html
genauso wenig wie mehrere Leerzeilen.
============================================================
第93题:排序的精髓
题目描述:给你一个整数list L,现在只允许你有一种操作:交换列表中相邻的两个元素。
对于一个给定的L,请你输出至少需要多少次交换可以让L变成升序序列。
如:L=[2, 8, 0, 3],则输出3。
注解: 2 8 0 3
swap (8 0)=> 2 0 8 3
swap (2 0)=> 0 2 8 3
swap (8 3)=> 0 2 3 8示例:输入:L = [2, 8, 0, 3]
输出:3


============================================================
第94题:整数划分
题目描述:给你一个正整数N,请你求出一共有多少种方式用不超过N的正整数求和得到N。
例如:
N=4,则输出5.因为4只有如下五种求和方式:
4 = 4
4 = 3 + 1
4 = 2 + 2
4 = 2 + 1 + 1
4 = 1 + 1 + 1 + 1
示例:输入:N = 1
输出:1


============================================================
第95题:数字序列
题目描述:数字序列定义如下:
f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) % 7.
现在给你A,B和n(1 
示例:输入:A = 1
B = 1
n = 3
输出:2


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

来源:

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