运用结构体和string
- 构建结构体record,创建一个结构体数组,用于存放m条记录;
- 用minin和maxout分别记录开门人的下标和关门人的下标;
- 输出下标为minin和maxout的工号即可。
#include <iostream>
using namespace std;
#include<algorithm>
#include<string>
struct record{
string num;
string in;
string out;
};
int main() {
int m; //条目数
cin>>m;
struct record str[m]; //创建结构体数组
//输入记录
for (int i = 0; i < m; i++){
cin >> str[i].num >> str[i].in >> str[i].out;
//cout<<str[i].num<<" "<<str[i].in<<" "<<str[i].out<<endl;
}
int minin = 0; //记录最早上班的人的下标,初始化为0
int maxout = 0; //记录最晚下班的人的下标,初始化为0
//遍历结构体数组,找到minin和maxout
for (int i = 1; i < m; i++){
if (str[minin].in > str[i].in){
minin = i;
}
if (str[maxout].out < str[i].out){
maxout = i;
}
}
//输出
cout<<str[minin].num<<" ";
cout<<str[maxout].num<<endl;
}
// 64 位输出请用 printf("%lld")

京公网安备 11010502036488号