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;
}

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

相关推荐
Lumos18617 分钟前
故障保护与鲁棒性(十七)
算法
手写码匠21 分钟前
从零实现大模型推理引擎:Continuous Batching 与动态调度系统深度解析
人工智能·深度学习·算法·aigc
wabs66643 分钟前
关于单调栈【力扣503.下一个更大元素II的思考】
算法·单调栈
c238561 小时前
下篇:伸缩魔法!进阶吃透可变滑动窗口篇
c++·算法
186******205311 小时前
RuView 新手快速上手与实战指南
算法
txzrxz1 小时前
关于二维/多维前缀和
算法
来一碗刘肉面1 小时前
顺序表的按值查找
数据结构·c++·算法
zzz_23682 小时前
【Java实习面试算法冲刺】图论
java·算法·面试
大鱼>2 小时前
宠物监控数据安全与隐私保护:端到端加密与合规实践
人工智能·深度学习·算法·iot·宠物
被自己蠢哭2 小时前
BFS广度优先搜索问题:#P00496. 华为od机试—自动泊车
算法