L1-043 阅览室 (20 分)(在线模拟题)

简介: L1-043 阅览室 (20 分)(在线模拟题)

L1-043 阅览室 (20 分)

天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时,管理员输入书号并按下S键,程序开始计时;当读者还书时,管理员输入书号并按下E键,程序结束计时。书号为不超过1000的正整数。当管理员将0作为书号输入时,表示一天工作结束,你的程序应输出当天的读者借书次数和平均阅读时间。

注意:由于线路偶尔会有故障,可能出现不完整的纪录,即只有S没有E,或者只有E没有S的纪录,系统应能自动忽略这种无效纪录。另外,题目保证书号是书的唯一标识,同一本书在任何时间区间内只可能被一位读者借阅。

输入格式:

输入在第一行给出一个正整数N(≤10),随后给出N天的纪录。每天的纪录由若干次借阅操作组成,每次操作占一行,格式为:

书号([1, 1000]内的整数) 键值SE发生时间hh:mm,其中hh是[0,23]内的整数,mm是[0, 59]内整数)

每一天的纪录保证按时间递增的顺序给出。

输出格式:

对每天的纪录,在一行中输出当天的读者借书次数和平均阅读时间(以分钟为单位的精确到个位的整数时间)。

输入样例:

3
1 S 08:10
2 S 08:35
1 E 10:00
2 E 13:16
0 S 17:00
0 S 17:00
3 E 08:10
1 S 08:20
2 S 09:00
1 E 09:20
0 E 17:00

输出样例:

2 196
0 0
1 60

看不懂的提问在线解答

#include<iostream>
 
using namespace std;
 
const int N = 1010;
 
struct ll
{
  int ans;
  char key;
}a[N];
 
int main()
{
  int n, num, cnt = 0, hh, mm;
  double sum = 0;
  char c, ch;
 
  cin >> n;
 
  while (n)
  {
    cin >> num >> ch >> hh >> c >> mm;
 
    if (!num)
    {
      if (cnt == 0)
      {
        printf("0 0\n");
      }
      else
      {
        printf("%d %.0lf\n", cnt, sum / cnt);
      }
      n--;
      cnt = 0;
      sum = 0;
    }
    else
    {
 
      if (ch == 'S')
      {
        a[num].ans = hh * 60 + mm;
        a[num].key = ch;
      }
      else if (ch == 'E')
      {
        if (a[num].key == 'S')
        {
          cnt++;
          sum += (hh * 60 + mm) - a[num].ans;
          a[num].key = 'E';
          a[num].ans = 0;
        }
      }
    }
  }
  return 0;
}


目录
相关文章
|
3月前
|
存储 索引
6/1 第十五届蓝桥杯国赛pb组 真题本人答案 仅供参考
6/1 第十五届蓝桥杯国赛pb组 真题本人答案 仅供参考
44 4
|
算法 Java Python
【算法模板】DFS秒杀模板—附练习题(阳光号启航)(一)
【算法模板】DFS秒杀模板—附练习题(阳光号启航)(一)
【算法模板】DFS秒杀模板—附练习题(阳光号启航)(一)
|
机器学习/深度学习 存储 人工智能
【第十四届蓝桥杯】第三期官方校内模拟赛B组C++题解(已修正完毕,均可AC100%)
文章目录 写在前面 一、字母数(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 二、列名(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 三、特殊日期(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 四、大乘积(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 ==五、最大连通==(已修正) 题目描述 解题报告 1、大体思路 2、代码详解 六、星期几(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 七、信号覆盖(AC100%) 题目描述 解题报告 1、大体思路 2、代码详解 八、清理水域(AC100%) 题目描述 解
431 0
|
程序员
【蓝桥杯基础题】2018年省赛—日志统计
【蓝桥杯基础题】2018年省赛—日志统计
94 0
【蓝桥杯基础题】2018年省赛—日志统计
L1-043 阅览室 (20 分)(在线模拟题
L1-043 阅览室 (20 分)(在线模拟题
112 0
L1-043 阅览室 (20 分)(在线模拟题
PAT-2021年秋季考试 乙级 7-3 自定义判题程序 (20 分)
在每次允许插入、删除、修改一个字符的前提下,用最少的动作把一个字符串变成另一个字符串,是一道著名的可以用动态规划解决的问题。
100 0
|
机器学习/深度学习 机器人 API
【蓝桥杯省赛】冲刺练习题【经典题目练习】倒计时【01】天(准考证组委会已下发,请查询)-1
【蓝桥杯省赛】冲刺练习题【经典题目练习】倒计时【01】天(准考证组委会已下发,请查询)
105 0
【蓝桥杯省赛】冲刺练习题【经典题目练习】倒计时【01】天(准考证组委会已下发,请查询)-1
|
人工智能 Java BI
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)-2
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)
114 0
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)-2
|
机器学习/深度学习
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)-1
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)
106 0
【蓝桥杯省赛】冲刺练习题【数学公式】倒计时【06】天(准考证组委会已下发,请查询)-1
|
自然语言处理
h0136. 在线翻译 (25 分)
h0136. 在线翻译 (25 分)
149 0