PAT甲级1006 :Sign In and Sign Out

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int change(const string& ss) {
    int sum = 0;
    for(char c : ss) {
        int n = c - '0';
        sum = sum * 10 + n;
    }
    return sum;
}
int main() {
    int n;
    cin >> n;
    vector<string> name(n);
    int l_index = 0;
    int l = 99999999;
    int h_index = 0;
    int h = -1;
    for(int i = 0; i < n; i++) {
        string name1;
        cin >> name1;
        name[i] = name1;

        string time1, time2;
        cin >> time1 >> time2;

        int r1 = change(time1.substr(0, 2));
        int r2 = change(time1.substr(3, 2));
        int r3 = change(time1.substr(6, 2));
        int now_sum1 = r1 * 3600 + r2 * 60 + r3;
        if (now_sum1 < l) {
            l_index = i;
            l = now_sum1;
        }
        r1 = change(time2.substr(0, 2));
        r2 = change(time2.substr(3, 2));
        r3 = change(time2.substr(6, 2));
        int now_sum2 = r1 * 3600 + r2 * 60 + r3;
        if (now_sum2 > h) {
            h_index = i;
            h = now_sum2;
        }
    }
    cout << name[l_index] << " " << name[h_index] << endl;
    return 0;
}

字符串转数字、字符串取子串

相关推荐
I_LPL4 小时前
hot100贪心专题
数据结构·算法·leetcode·贪心
颜酱4 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
WolfGang0073215 小时前
代码随想录算法训练营 Day16 | 二叉树 part06
算法
2401_831824966 小时前
代码性能剖析工具
开发语言·c++·算法
Sunshine for you7 小时前
C++中的职责链模式实战
开发语言·c++·算法
qq_416018727 小时前
C++中的状态模式
开发语言·c++·算法
2401_884563247 小时前
模板代码生成工具
开发语言·c++·算法
2401_831920747 小时前
C++代码国际化支持
开发语言·c++·算法
m0_672703317 小时前
上机练习第51天
数据结构·c++·算法
ArturiaZ8 小时前
【day60】
算法·深度优先·图论