- 只需要记录每本书借的时间,初始化为-1表示还未被借阅或者已经被还回来了
- 涉及除法分母必须分类讨论!
#include <iostream>
using namespace std;
const int N = 1e3 + 10;
struct Book {
int stt = -1;
}book[N];
int main() {
int n; scanf("%d", &n);
for (int i = 1; i <= n; ++ i) {
int sum = 0, cnt = 0;
int idx, hh, mm, time;
char op;
while (scanf("%d %c %d:%d", &idx, &op, &hh, &mm) && idx) {
time = hh * 60 + mm;
if (op == 'S') {
book[idx].stt = time;
} else if (book[idx].stt != -1) {
cnt ++ ;
sum += time - book[idx].stt;
book[idx].stt = -1;
}
}
if (cnt == 0) {
printf("0 0\n");
} else {
printf("%d %d\n", cnt, (int)(1.0 * sum / cnt + 0.5));
}
}
}