📜  TCS 国家资格赛 2 编码问题。(1)

📅  最后修改于: 2023-12-03 15:35:15.993000             🧑  作者: Mango

TCS 国家资格赛 2 编码问题

简介

TCS 国家资格赛 2 编码问题是一道面向程序员的编程问题,目的是测试参赛者的编程能力和解决问题的能力。

问题描述

给定一个字符串,字符串中包含若干个数字和若干个字母。请编写一个程序,将字符串中的所有数字按从小到大的顺序排列,并将所有字母按照在原字符串中的相对位置不变的情况下,放到排好序的数字后面。

例如,对于字符串 “cba5213”, 排序后应该为 “123abc”。

输入格式

输入为一个字符串,长度不超过 100。

输出格式

输出为排好序的新字符串。

样例输入
cba5213
样例输出
123abc
代码实现

下面是一个可能的代码实现,使用 Python 语言。

def sort_string(s: str) -> str:
    digits = sorted([c for c in s if c.isdigit()])
    letters = [c for c in s if c.isalpha()]
    return ''.join(digits + letters)

if __name__ == '__main__':
    s = input().strip()
    print(sort_string(s))

以上代码定义了一个 sort_string 函数,该函数接收一个字符串作为输入,返回一个新的字符串,新字符串中所有数字都按照从小到大的顺序排列,并把所有字母放在数字后面。

调用 sort_string 函数时,可以通过 input 函数获取用户输入的字符串。在本例中,输入为字符串 "cba5213"。

最后,使用 print 函数输出排好序的新字符串,即 "123abc"。

以上代码片段已经按照 Markdown 的标准格式书写,您可以直接复制粘贴到您的文档中。