⬆︎
×

[PAT-A] 1006 Sign In and Sign Out

Hyplus目录

Java

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt();
        scanner.nextLine(); // 读取换行符

        String open_id = "";
        String open_time = "";
        String close_id = "";
        String close_time = "";

        for (int i = 0; i < m; i++) {
            String id = scanner.next();
            String in_time = scanner.next();
            String out_time = scanner.next();

            if (i == 0 || in_time.compareTo(open_time) < 0) { // 更新开门的人
                open_id = id;
                open_time = in_time;
            }

            if (i == 0 || out_time.compareTo(close_time) > 0) { // 更新锁门的人
                close_id = id;
                close_time = out_time;
            }
        }

        System.out.println(open_id + " " + close_id);
    }
}

C++

#include <iostream>
#include <cstring>
#include <algorithm>

using namespace std;

int m;
string open_id, open_time;
string close_id, close_time;

int main() {
    cin >> m;

    for (int i = 0; i < m; i++) {
        string id, in_time, out_time;
        cin >> id >> in_time >> out_time;

        if (!i || in_time < open_time) {    // 更新开门的人
            open_id = id;
            open_time = in_time;
        }

        if (!i || out_time > close_time) {    // 更新锁门的人
            close_id = id;
            close_time = out_time;
        }
    }

    cout << open_id << ' ' << close_id << endl;

    return 0;
}

发表评论