题目: 输入一个由n个大小写字母组成的字符,按Ascii码值从小到大排序,查找字符串中第k个最小Ascii码值的字母(k>=1) 输入要求: 第一行输入大小写组成的字符串 第二行输入k, k必须大于0,k可以大于字符串长度 输出要求: 输出该字母所在字符串的位置索引,字符串第一个位置索引是为0, k如果大于字符串长度,则输出最大值的怎么所在字符串的位置索引, 如果第k个最小Ascii码值的字母有重复,则输出该字母的最小位置索引。 示例: 输入: AbCdeFG 3
输出: 5 参考代码 """ 作者:上海-悠悠 python QQ交流群:730246532
""" while 1: input_str = [] for line in iter(input, "end"): # 每行接收的东西 input_str.append(line) if len(input_str) >= 2: break input_s, input_k = input_str try: k = int(input_k) except Exception as msg: print('k必须是数字') continue sort_s = sorted(input_s) if k <= 0: print('k必须大于0') else: if k > len(input_s): k = len(input_s) num_value = sort_s[k - 1] index = input_s.find(num_value) print(index) break
运行结果
|