蓝桥杯数位排序python
时间: 2023-11-08 17:57:03 浏览: 39
题目描述
输入一个整数,将它的各个数字从大到小排序后输出。
输入格式
输入一个整数n,1≤n≤109。
输出格式
输出排序后的整数。
样例输入
1634
样例输出
6431
算法1
(模拟) $O(nlogn)$
1.将数字转化为字符串,字符串转化为列表
2.对列表进行排序,从大到小
3.将排序后的列表转化为字符串,字符串转化为数字
4.输出数字
时间复杂度
$O(nlogn)$
参考文献
暂无
C++ 代码
python3 代码
# python3 代码
n = input()
res = ''.join(sorted(list(n), reverse=True))
print(int(res))
相关问题
蓝桥杯Python冒泡排序
蓝桥杯Python冒泡排序的代码如下:
```
def bubble_sort(words):
count = 0
for i in range(len(words)):
for j in range(i+1, len(words)):
if words[i > words[j]:
words[i], words[j = words[j], words[i]
count += 1
return count
print(bubble_sort(list('onmlkjihgfedcba')))
print(bubble_sort(list('jonmlkihgfedcba')))
```
这段代码实现了冒泡排序算法,它会遍历数组,每次将相邻的两个元素进行比较,如果前一个元素大于后一个元素,则交换它们的位置。经过一轮遍历后,最大的元素被冒泡到最后。代码中的count变量用来记录交换的次数,最后返回count的值。冒泡排序是一种简单但效率较低的排序算法,它的时间复杂度为O(n^2)。在参考代码中,str1是待排序的字符串,通过将字符串转换成列表lis,然后进行冒泡排序,最后将排序后的列表转换回字符串并输出。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [[蓝桥杯] 排序 (Python 实现)](https://blog.csdn.net/d_l_w_d_l_w/article/details/122300049)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [蓝桥杯-零基础python刷题之路-字符串冒泡排序(包含各个知识点详细记录)](https://blog.csdn.net/m0_37805091/article/details/122619671)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
蓝桥杯水仙花数python
水仙花数是指一个n位数 ( n>=3 ),它的每个位上的数字的 n次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。以下是在Python中判断一个数是否为水仙花数的代码:
```python
num = int(input("请输入一个数字:"))
# 初始化变量
sum = 0
temp = num
# 计算每位数字的n次幂之和
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
# 判断是否为水仙花数
if num == sum:
print(num,"是水仙花数")
else:
print(num,"不是水仙花数")
```
请注意,此代码只能判断一个数字是否为水仙花数,并不能生成所有的水仙花数。