酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

描述 组织一场考试时,监考老师手里会有一份签到表,按座位号的顺序列出学生。但学生要根据这份表找到自己的座位编号就很麻烦了。本题就要求你编写程序,帮助学生快速找到他们的座位号。时间限制:5000内存限制:65535 输入 输入第一行给出一个不超过103的正整数n,是参加考试的学生数。以下n行,第i行给出座位号为i的学生的学号(i=1,..., n)。学号是一个不超过8位、完全由数字组成的字符串。输入保证每个学生只分配一个座位。接下来一行给出一个不超过105 的正整数 m,是待查询的学生数。以下m行,每行给出一个待查询的学生的学号。 输出 对每一个待查询的学生,如果他在考场里有座位,则在一行中输出其座位号;否则输出‘na`(not available的缩写),表示座位号不存在。 样例输入5 1000132002331000015200778867594 520077000000100013999999 样例输出4 na1 na 用c++二级方法写

```cpp #include <iostream> #include <string> #include <unordered_map> int main() { int n; std::cin >> n; std::unordered_map<std::string, int> studentSeat; for (int i = 1; i <= n; ++i) { std::string studentId; std::cin >> studentId; studentSeat[studentId] = i; } int m; std::cin >> m; for (int i = 0; i < m; ++i) { std::string studentId; std::cin >> studentId; if (studentSeat.find(studentId)!= studentSeat.end()) { std::cout << studentSeat[studentId] << std::endl; } else { std::cout << "na" << std::endl; } } return 0; } ``` [2024-10-18 23:41:07 | AI写代码神器 | 224点数解答]

相关提问