2026/6/20 10:30:16
网站建设
项目流程
权重的网站,黑龙江人事考试网,做海报的网站知乎,沃航科技网站开发(新卷,100分)- 机场航班调度程序#xff08;Java JS Python C#xff09;题目描述XX市机场停放了多架飞机#xff0c;每架飞机都有自己的航班号CA3385#xff0c;CZ6678#xff0c;SC6508等#xff0c;航班号的前2个大写字母#xff08;或数字#x…(新卷,100分)- 机场航班调度程序Java JS Python C题目描述XX市机场停放了多架飞机每架飞机都有自己的航班号CA3385CZ6678SC6508等航班号的前2个大写字母或数字代表航空公司的缩写后面4个数字代表航班信息。但是XX市机场只有一条起飞跑道调度人员需要安排目前停留在机场的航班有序起飞。为保障航班的有序起飞调度员首先按照航空公司的缩写航班号前2个字母对所有航班进行排序同一航空公司的航班再按照航班号的后4个数字进行排序最终获得安排好的航班的起飞顺序。请编写一段代码根据输入的航班号信息帮助调度员输出航班的起飞顺序。说明航空公司缩写排序按照从特殊符号$ *0~9A~Z排序输入描述第一行输入航班信息多个航班号之间用逗号 , 分隔输入的航班号不超过100个。例如CA3385,CZ6678,SC6508,DU7523,HK4456,MK0987备注航班号为6为长度后4位位纯数字不考虑存在后4位重复的场景。输出描述CA3385,CZ6678,DU7523,HK4456,MK0987,SC6508用例输入CA3385,CZ6678,SC6508,DU7523,HK4456,MK0987输出CA3385,CZ6678,DU7523,HK4456,MK0987,SC6508说明输入为目前停留在该机场的航班号输出为按照调度排序后输出的有序的航班号输入MU1087,CA9908,3U0045,FM1703输出3U0045,CA9908,FM1703,MU1087说明无题目解析JS算法源码const rl require(readline).createInterface({ input: process.stdin }); var iter rl[Symbol.asyncIterator](); const readline async () (await iter.next()).value; void (async function () { const flights (await readline()).split(,); flights.sort((a, b) { const abbr1 a.slice(0, 2); const num1 a.slice(2); const abbr2 b.slice(0, 2); const num2 b.slice(2); if (abbr1 abbr2) { return strcmp(num1, num2); } else { return strcmp(abbr1, abbr2); } }); console.log(flights.join(,)); })(); function strcmp(a, b) { if (a b) { return 1; } else if (a b) { return -1; } else { return 0; } }Java算法源码import java.util.Arrays; import java.util.Scanner; import java.util.StringJoiner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); String[] flights sc.nextLine().split(,); StringJoiner sj new StringJoiner(,); Arrays.stream(flights) .sorted( (a, b) - { String abbr1 a.substring(0, 2); String num1 a.substring(2); String abbr2 b.substring(0, 2); String num2 b.substring(2); if (abbr1.equals(abbr2)) { return num1.compareTo(num2); } else { return abbr1.compareTo(abbr2); } }) .forEach(sj::add); System.out.println(sj); } }Python算法源码flights input().split(,) flights.sort(keylambda x: (x[0:2], x[2:])) print(,.join(flights))C算法源码#include stdio.h #include string.h #include stdlib.h int cmp(const void *a, const void *b) { char *A (char *) a; char *B (char *) b; char abbr1[3]; strncpy(abbr1, A, 2); char num1[5]; strncpy(num1, A2, 4); char abbr2[3]; strncpy(abbr2, B, 2); char num2[5]; strncpy(num2, B2, 4); int res strcmp(abbr1, abbr2); if(res 0) { return strcmp(num1, num2); } else { return res; } } int main() { char s[1000]; gets(s); char flights[100][7]; int flights_size 0; char *token strtok(s, ,); while (token ! NULL) { strcpy(flights[flights_size], token); token strtok(NULL, ,); } qsort(flights, flights_size, sizeof(flights[0]), cmp); for (int i 0; i flights_size; i) { printf(%s, flights[i]); if (i ! flights_size - 1) { printf(,); } } }