zoukankan      html  css  js  c++  java
  • PAT 天梯赛 L1-043. 阅览室 【STL】

    题目链接

    https://www.patest.cn/contests/gplt/L1-043

    思路
    将每一次 借出和归还 都用 MAP 标记 如果归还的时候 已经被标记过了 那么 ANS ++ 并且 TIME 也加上相应时间

    最后 算一下平均时间 要四舍五入

    AC代码

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cmath>
    #include <deque>
    #include <vector>
    #include <queue>
    #include <string>
    #include <cstring>
    #include <map>
    #include <stack>
    #include <set>
    #include <cstdlib>
    #include <ctype.h>
    #include <numeric>
    #include <sstream>
    
    using namespace std;
    typedef long long LL;
    
    const double PI  = 3.14159265358979323846264338327;
    const double E   = 2.718281828459;  
    const double eps = 1e-6;
    
    const int MAXN   = 0x3f3f3f3f;
    const int MINN   = 0xc0c0c0c0;
    const int maxn   = 1e5 + 5; 
    const int MOD    = 1e9 + 7;
    
    struct node
    {
        int time;
        int flag;
    };
    
    int main()
    {
        int t;
        cin >> t;
        a:
        while (t--)
        {
            map <string, node> m;
            m.clear();
            string ID;
            char vis;
            int h, mins;
            int ans = 0;
            int time = 0;
            while (cin >> ID)
            {
                scanf(" %c %02d:%02d", &vis, &h, &mins);
                if (ID == "0")
                {
                    if (ans > 0)
                        time = (int)(time*1.0/ans + 0.5);
                    printf("%d %d
    ", ans, time);
                    goto a;
                }
                else
                {
                    if (vis == 'S')
                    {
                        m[ID].time = h * 60 + mins;
                        m[ID].flag = 1;
                    }
                    else if (vis == 'E')
                    {
                        if (m[ID].flag == 1)
                        {
                            ans ++;
                            time += (h * 60 + mins) - m[ID].time;
                            m.erase(ID);
                        }
                    }
                }
            }
        }
    }
    
  • 相关阅读:
    大数据集群实验环境搭建
    ORACLE 自治事物
    UNDO内存结构剖析
    事物深度解析
    UNDO
    SCN
    检查点队列
    WPS Excel启用正则表达式
    Python遍历目录下xlsx文件
    Python 字符串指定位置替换字符
  • 原文地址:https://www.cnblogs.com/Dup4/p/9433284.html
Copyright © 2011-2022 走看看