目录

题目

思路

Code


题目

        XX市机场停放了多架飞机,每架飞机都有自己的航班号CA3385,CZ6678,SC6508等,航班号的前2个大写字母(或数字)代表航空公司的缩写,后面4个数字代表航班信息。

        但是XX市机场只有一条起飞用跑道,调度人员需要安排目前停留在机场的航班有序起飞。为保障航班的有序起飞,调度员首先按照航空公司的缩写(航班号前2个字母)对所有航班进行排序,同一航空公司的航班再按照航班号的后4个数字进行排序最终获得安排好的航班的起飞顺序。

        请编写一段代码根据输入的航班号信息帮助调度员输出航班的起飞顺序。航空公司缩写排序按照从特殊符号S & *,0~9,A~Z排序;

输入描述
第一行输入航班信息,多个航班号之间用逗号 (“,”) 分隔,输入的航班号不超过100个

例如:
CA3385,CZ6678,SC6508,DU7523,HK4456,MK0987

备注: 航班号为6位长度,后4位为纯数字,不考虑存在后4位重复的场号
输出描述
CA3385,CZ6678,DU7523,HK4456,MK0987,SC6508


示例1:
输入

CA3385,CZ6678,SC6508,DU7523,HK4456,MK0987
输出
CA3385,CZ6678,DU7523,HK4456,MK0987,SC6508

说明
输入目前停留在该机场的航班号,输出为按照调度排序后输出的有序的航班号

示例2:
输入
MU1087,CA9908,3U0045,FM1703
输出
3U0045,CA9908,FM1703,MU1087

思路

1:自定义排序,多刷题就能cover住的题型,考的纯纯是基本功。

编辑

Code

# coding:utf-8
#JSRUN引擎2.0,支持多达30种语言在线运行,全仿真在线交互输入输出。 
import functools
import sys
from collections import Counter, defaultdict
import copy
from itertools import permutations
import re
import math
import sys
from queue import Queue
 
params = input().split(",")
params.sort(key=lambda x : (x[0:2], x[2:]))
output_str = ""
for i in params:
    output_str += i + ","
print(output_str[:-1])
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.