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

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

相关推荐
Nil2086 小时前
leetcode 300最长递增子序列
算法·leetcode·职场和发展
垆边人似月.7 小时前
华为机试题 :最大数
c++·算法·华为
念越7 小时前
题库、练习与错题本代码阅读
开发语言·数据结构
zhenaibo5217 小时前
如何与导师有效沟通选题?
算法
熊猫钓鱼>_>8 小时前
大学图论第 6 讲:网络流与二分图匹配——对偶性让瓶颈自己现形
开发语言·算法·面试·职场和发展·图论·校招·面经
没有钱的钱仔8 小时前
最大似然估计(MLE)通俗理解
算法·机器学习·概率论
yi0118 小时前
LeetCode 424. 替换后的最长重复字符|不定长滑动窗口:如何判断窗口是否合法?
笔记·python·算法·leetcode·双指针·滑动窗口
Nebula_g8 小时前
JavaSE高级:动态代理
java·开发语言·算法·javase
垆边人似月.8 小时前
华为题:盛最多水的容器
数据结构·算法
怦然丶心动8 小时前
用 Java 把干支历法算清楚:从节气切年到可读摘要
java·算法·vue·独立开发·spring boot / spring