pat 乙级 1041 考试座位号(C++)

题目

每个 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

分析

  • 方法1:暴力求解。先把考生信息存下来,结构体数组,或者开3个数组都可以。然后对每次输入的试机号,都在考生信息里遍历一遍,找到准考证号和考试座位号。
  • 方法2:把试机号作为数组下标,开两个数组(N+1)或者用一个结构体数组存(N+1),然后对每次输入的试机号,直接就可输出与待查试机号相等的考生信息。

AC代码

方法1代码

#include<iostream>
using namespace std;
struct Info
{string id;int test;int exam;
};
int main()
{int i,j,N,M;cin>>N;Info stu[N];for(i=0; i<N; i++){cin>>stu[i].id>>stu[i].test>>stu[i].exam;}cin>>M;int temp;for(i=0; i<M; i++){cin>>temp;for(j=0; j<N; j++){if(temp==stu[j].test){cout<<stu[j].id<<" "<<stu[j].exam;break;}}if(i!=M-1)cout<<endl;}return 0;
}

方法2代码

#include<iostream>
using namespace std;
struct Info
{string id;int exam;
};
int main()
{int i,N,M,test,exam,temp;string id;cin>>N;	Info stu[N+1];stu[0].id=" ";	stu[0].exam=0; for(i=0; i<N; i++){cin>>id>>test>>exam;stu[test].id=id;stu[test].exam=exam; }cin>>M;for(i=0; i<M; i++){cin>>temp;cout<<stu[temp].id<<" "<<stu[temp].exam;if(i!=M-1)cout<<endl;}return 0;
}

在数据量较小的时候,方法1和方法2并没有太多区别。但当数据量较大时,方法1有超时的风险。

更多题解
pat 乙级(Basic Level) 题解汇总(持续更新)(C++)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu16U盘没有不能新建粘贴文件[sdf] Write cache: disabled, read cache: enabled, doesn‘t support DPO or FUA

Ubuntu16.04U盘变为只读&#xff0c;不可写入 之前博客记录了Ubantu18下U盘只读的问题&#xff0c;Ubuntu16错误与18不同&#xff0c;故在此记录 1首先参考了这个方法 可是没有解决。。。 https://blog.csdn.net/slj_win/article/details/50349976 但是起码知道了 排错&#x…

1042 字符统计(PAT乙级、C++)(超详细)

题目 请编写程序&#xff0c;找出一段给定文字中出现最频繁的那个英文字母。 输入格式&#xff1a; 输入在一行中给出一个长度不超过 1000 的字符串。字符串由 ASCII 码表中任意可见字符及空格组成&#xff0c;至少包含 1 个英文字母&#xff0c;以回车结束&#xff08;回车…

NS3可视化问题及解决办法

NS Bindings相关问题: 1 NS3编译遇到的Python相关的问题解决办法 ./waf configure --with-pybindgen存放路径 Linux系统在使用时&#xff0c;难免碰到更新忍不住升级软件包&#xff0c;升级软件包有时会带来开发环境的变化&#xff0c;环境的变化就会导致一些编译环境由于版…

使用Angular,Ionic 4和Spring Boot构建移动应用

朋友不允许朋友写用户身份验证。 厌倦了管理自己的用户&#xff1f; 立即尝试Okta的API和Java SDK。 在几分钟之内即可对任何应用程序中的用户进行身份验证&#xff0c;管理和保护。 我是Ionic的忠实粉丝。 几年前&#xff0c;我基于AngularJS开始使用它。 作为开发人员&#…

1039 到底买不买(pat乙级、C++)

题目 小红想买些珠子做一串自己喜欢的珠串。卖珠子的摊主有很多串五颜六色的珠串&#xff0c;但是不肯把任何一串拆散了卖。于是小红要你帮忙判断一下&#xff0c;某串珠子里是否包含了全部自己想要的珠子&#xff1f;如果是&#xff0c;那么告诉她有多少多余的珠子&#xff1…

ns3中调试程序------命令行、gdb和logging系统

1、在调试代码时候&#xff0c;一直没有弄明白NS_LOG中的各种函数是如何使用的&#xff0c;甚至现在运行程序只知道&#xff0c;./waf –run&#xff0c;至于输出调试信息&#xff0c;现在真的是没有弄明白&#xff0c;不利于代码的理解和调试。 2、通过命令行&#xff0c;改变…

1043 输出PATest(PAT乙级 C++)

题目 给定一个长度不超过 10​4的、仅由英文字母构成的字符串。请将字符重新调整顺序&#xff0c;按 PATestPATest… 这样的顺序输出&#xff0c;并忽略其它字符。当然&#xff0c;六种字符的个数不一定是一样多的&#xff0c;若某种字符已经输出完&#xff0c;则余下的字符仍…

ModuleNotFoundError: No module named ‘apt_pkg‘

原因 升级到python3.6会导致python库的引用产生混乱 解决方法 先选择删除python-apt apt-get remove --purge python-apt 安装python-apt apt-get install -f -y python-apt 拷贝python3.5的apt-pkg*.so 名重名为python3.6的apt-pkg*.so cd /usr/lib/python3/dist-packag…

使用Selenium Webdriver进行全屏截图

在任何网页测试人员中&#xff0c;执行效果最好的操作之一就是对网页进行截图。 每当测试人员发现并报告错误时&#xff0c;如果不支持该问题的屏幕截图甚至视频&#xff0c;就不会认真对待该错误。 不论您进行的测试类型是什么&#xff0c;包括硒自动化测试&#xff0c;都是如…

子进程 已安装 post-installation 脚本 返回错误状态 1 dpkg: 依赖关系问题使得 mysql-server 的配置工作不能继续: mysql-server 依赖于 mysq

错误概述 有 2 个软件包没有被完全安装或卸载。 解压缩后会消耗 0 B 的额外空间。 您希望继续执行吗&#xff1f; [Y/n] y 正在设置 mysql-server-5.7 (5.7.24-0ubuntu0.16.04.1) ... mysql_upgrade: Got error: 2002: Cant connect to local MySQL server through socket /va…

1046 划拳 PAT乙级(C++)

题目 划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为&#xff1a;每人口中喊出一个数字&#xff0c;同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和&#xff0c;谁就赢了&#xff0c;输家罚一杯酒。两人同赢或两人同输则继续下一…

只读副本和Spring Data第4部分:配置只读存储库

以前&#xff0c;我们在同一应用程序中设置了两个EntityManager。 一种用于读取&#xff0c;另一种用于写入。 现在是时候创建我们的读取存储库了。 只读存储库将使用辅助只读EntityManager。 为了使其成为只读存储库&#xff0c;至关重要的是不要执行任何保存和持久操作。 p…

c++中 int, long long, double 等数据类型的长度及范围整理

先附上一个比较直观的表&#xff0c;长度表示字节: byte: 字节 bit: 位 1. 短整型short&#xff1a; 所占内存大小&#xff1a;2byte16bit&#xff1b; 所能表示范围&#xff1a;-32768~32767&#xff1b;(即-2^15~2^15-1) 2. 整型int&#xff1a; 所占内存大小&#xff1a;4…

1044 火星数字 PAT乙级 (C++)

题目 火星人是以 13 进制计数的&#xff1a; 地球人的 0 被火星人称为 tret。地球人数字 1 到 12 的火星文分别为&#xff1a;jan, feb, mar, apr, may, jun, jly, aug, sep, oct, nov, dec。火星人将进位以后的 12 个高位数字分别称为&#xff1a;tam, hel, maa, huh, tou, …

怎样编写测试类测试分支_编写干净的测试–从配置开始

怎样编写测试类测试分支很难为干净的代码找到一个好的定义&#xff0c;因为我们每个人都有自己的单词clean的定义。 但是&#xff0c;有一个似乎是通用的定义&#xff1a; 简洁的代码易于阅读。 这可能会让您感到有些惊讶&#xff0c;但我认为该定义也适用于测试代码。 使测试…

python 数据处理----读取txt 一列数据写入excel 文件

将txt数据从某一行开始写入excel文件中&#xff08;例子为从Appthroughput写至excel_result1.xlsx中&#xff09; import sys import random import time import xlwt import codecsdef Txt_to_Excel(wb,inputTxt,start_row,start_col):fr codecs.open(inputTxt,r)line_numbe…

CCF CSP 201403-1 相反数(C++)

题目 问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。 输入格式 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。   第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。 输出…

硒等待:内隐,外显,流利和睡眠

Selenium等待页面加载在Selenium脚本中起着重要的作用。 它们有助于使它们不易剥落&#xff0c;更可靠。 Selenium提供多次等待&#xff0c;以根据某些条件在脚本执行中提供足够的等待或暂停。 从而确保您在使用Selenium执行自动化测试时不会导致脚本失败。 在本教程中&#xf…

python多个变量的for循环

当for循环有两个需要迭代的对象时&#xff0c;要用zip对这多个变量封装&#xff0c;否则会报错“too many values to unpack” 错误的例子&#xff1a; starts [0,1,2,3,4]ends [5,6,7,8,9]for start, end in starts, ends:print((start, end)) 正确的例子&#xff1a; sta…

1040 有几个PAT(PAT乙级 C++)

题目 字符串 APPAPT 中包含了两个单词 PAT&#xff0c;其中第一个 PAT 是第 2 位(P&#xff09;&#xff0c;第 4 位(A)&#xff0c;第 6 位(T)&#xff1b;第二个 PAT 是第 3 位(P&#xff09;&#xff0c;第 4 位(A)&#xff0c;第 6 位(T)。 现给定字符串&#xff0c;问一…