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

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

相关推荐
jianfeng_zhu1 小时前
整数数组匹配
数据结构·c++·算法
yueqingll1 小时前
032、数据结构之代码时间复杂度和空间复杂度的判断:从入门到实战
数据结构
smj2302_796826521 小时前
解决leetcode第3782题交替删除操作后最后剩下的整数
python·算法·leetcode
LYFlied2 小时前
【每日算法】LeetCode 136. 只出现一次的数字
前端·算法·leetcode·面试·职场和发展
唯唯qwe-3 小时前
Day23:动态规划 | 爬楼梯,不同路径,拆分
算法·leetcode·动态规划
做科研的周师兄3 小时前
中国土壤有机质数据集
人工智能·算法·机器学习·分类·数据挖掘
来深圳3 小时前
leetcode 739. 每日温度
java·算法·leetcode
yaoh.wang3 小时前
力扣(LeetCode) 104: 二叉树的最大深度 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
hetao17338374 小时前
2025-12-21~22 hetao1733837的刷题笔记
c++·笔记·算法
醒过来摸鱼4 小时前
递归三种分类方法
算法