【PAT】B1041 考试座位号 (15 分)_C++实现
2022/3/20 9:57:33
本文主要是介绍【PAT】B1041 考试座位号 (15 分)_C++实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1041 考试座位号 (15 分)
1 题目
每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。
输入格式:
输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号
。其中准考证号
由 16 位数字组成,座位从 1 到 N 编号。输入保证每个人的准考证号都不同,并且任何时候都不会把两个人分配到同一个座位上。
考生信息之后,给出一个正整数 M(≤N),随后一行中给出 M 个待查询的试机座位号码,以空格分隔。
输出格式:
对应每个需要查询的试机座位号码,在一行中输出对应考生的准考证号和考试座位号码,中间用 1 个空格分隔。
输入样例:
4 3310120150912233 2 4 3310120150912119 4 1 3310120150912126 1 3 3310120150912002 3 2 2 3 4
输出样例:
3310120150912002 2 3310120150912119 1
2 解答
C++:
思路:考虑输入的信息,准考证号16位、试机位、座位号、查找试机号。
初步想法是用三个int数组来分别存放准考证号、试机位、座位号,数组长度设置为1000,且准考证号要long long int类型。以及一个数组来存放查找试机号。
输入结束后,作者想法是遍历查找试机号的数组,与试机位数组对比,如果相同则输入。时间复杂度O(n^2)
最后一个输出做特殊处理。
你有好的想法,欢迎贡献。谢谢
#include<iostream> using namespace std; int main() { int N, M; int arr_get[1000] = {0}; // 待查找座位号 long long int arr[1000] = { 0 }; // 存放边界值N=10000;以及准考证座位号18位数 int arr_test_seat[1000] = { 0 }; // 存放试机位 int arr_seat[1000] = { 0 }; // 存放座位 cin >> N; /*输入座位信息 准考证号*/ for (int i = 0; i < N; i++) { cin >> arr[i]; cin >> arr_test_seat[i]; cin >> arr_seat[i]; } /*输入待查找信息*/ cin >> M; for (int i = 0; i < M; i++) { cin >> arr_get[i]; } /*查找开始,遍历查找*/ for (int i = 0; i < M - 1; i++) { int tem; tem = arr_get[i]; for (int j = 0; j < N; j++) { if (tem == arr_test_seat[j]) { cout << arr[j] << " " << arr_seat[j] << "\n"; } } } /*最后一个输出做特殊处理*/ int i = M - 1; int tem; tem = arr_get[i]; for (int j = 0; j < N; j++) { if (tem == arr_test_seat[j]) { cout << arr[j] << " " << arr_seat[j] << endl; } } }
3 测评
图 1 测 评 结 果 图1~测评结果 图1 测评结果
这篇关于【PAT】B1041 考试座位号 (15 分)_C++实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23增量更新怎么做?-icode9专业技术文章分享
- 2024-11-23压缩包加密方案有哪些?-icode9专业技术文章分享
- 2024-11-23用shell怎么写一个开机时自动同步远程仓库的代码?-icode9专业技术文章分享
- 2024-11-23webman可以同步自己的仓库吗?-icode9专业技术文章分享
- 2024-11-23在 Webman 中怎么判断是否有某命令进程正在运行?-icode9专业技术文章分享
- 2024-11-23如何重置new Swiper?-icode9专业技术文章分享
- 2024-11-23oss直传有什么好处?-icode9专业技术文章分享
- 2024-11-23如何将oss直传封装成一个组件在其他页面调用时都可以使用?-icode9专业技术文章分享
- 2024-11-23怎么使用laravel 11在代码里获取路由列表?-icode9专业技术文章分享
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享