{"trustable":false,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cscript type\u003d\u0027text/x-mathjax-config\u0027\u003eMathJax.Hub.Config({tex2jax: { inlineMath: [[\u0027$\u0027,\u0027$\u0027]] } }); \u003c/script\u003e\n\u003cscript type\u003d\u0027text/javascript\u0027 src\u003d\u0027https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\u0027\u003e\u003c/script\u003e\n\u003cscript type\u003d\u0027text/javascript\u0027\u003esetTimeout(function(){MathJax.Hub.Queue([\u0027Typeset\u0027, MathJax.Hub, \u0027left_view\u0027]);}, 2000);\u003c/script\u003e\n\u003cdiv class\u003d\"panel_content\"\u003e\n 众所周知,544在3岁时就展现出了极高的网站编写能力。 \n \u003cbr\u003e \n \u003cbr\u003e\n某一天544在刷题时OJ炸了,于是他找出题人要来了数据,自己写了一个OJ来测题,为了测试这个OJ功能是否正常,他邀请了你来帮忙。\n\u003cbr\u003e\n\u003cbr\u003e\n544的OJ和其它OJ一样,选手的代码提交后,有以下几种状态:\n \u003cbr\u003e\n\u003cbr\u003e\n1. Accepted (AC) : 恭喜,程序正确!\n \u003cbr\u003e \n 2. Presentation Error (PE): 你的答案虽然正确,可是中间多出了某些奇奇怪怪的字符(大多是空格或空行)。\n \u003cbr\u003e \n 3. Wrong Answer (WA) : 你写了个假算法。\n \u003cbr\u003e \n 4. Runtime Error (RE) : 你程序炸了。\n \u003cbr\u003e \n 5. Time Limit Exceeded (TLE): 别交大暴力了好嘛。 \n \u003cbr\u003e \n 6. Memory Limit Exceeded (MLE) : 给评测姬买内存条就让你过。\n \u003cbr\u003e \n 7. Output Limit Exceeded (OLE) : 你到底要输出啥?\n \u003cbr\u003e \n 8. Compilation Error (CE) : 吓得编译器都跑路了。\n \u003cbr\u003e \n \u003cbr\u003e\n544的OJ罚时是以分钟为单位计算的。\n\u003cbr\u003e\n\u003cbr\u003e\n对于每一次提交,如果这是你第一次通过本题,那么544的OJ将返回AC,并且将你的通过时间计入罚时。否则之前每一次错误提交,都会增加20分钟罚时。需要注意的是,只有当你AC了一道题,这道题的罚时才会被计入最终罚时,如果你到最后WA了N发也没通过这题,那罚时是不计的。\n \u003cbr\u003e\n\u003cbr\u003e\n当然,也会有无聊的小朋友在AC后又提交错误代码,这种罚时是不计的。也就是说,每题的最终罚时只看第一次AC时的状态。\n\u003cbr\u003e\n\u003cbr\u003e\n举个栗子,如果你在3:44时AC了一题,之前WA/TLE/RE/OLE/MLE/PE了2发,那么你这题的罚时就是3*60+44+2*20\u003d264分钟\n\u003cbr\u003e\n\u003cbr\u003e\n现在告诉你一场比赛的总题数,以及某支队伍的提交次数和提交信息,请你算一下这支队伍的最终AC数与最终罚时。\n\u003c/div\u003e"}},{"title":"Input","value":{"format":"HTML","content":"第一行是一个整数 T(1\u003c\u003d T\u003c\u003d20), 代表测试数据组数\n\u003cbr\u003e\n\u003cbr\u003e\n每组测试数据第一行是两个整数 n(1\u003c\u003d n\u003c\u003d 13) 和 m(1\u003c\u003dm\u003c\u003d 100) ,题目编号为 1001, 1002, ..., 1000+n. \n\u003cbr\u003e\n\u003cbr\u003e\n之后的m行,每行有一个正整数 x(1001\u003c\u003d x\u003c\u003d 1000+n) 和两个字符串 t(00:00\u003c\u003d t\u003c\u003d 05:00)和 s, 表示这支队伍在时间t提交了题目x,且返回的结果是s。t的格式是“小时:分钟”, s的状态会是{AC, PE, WA, RE, TLE, MLE, OLE}中的一种。 544邀请的参赛队伍都很厉害,不会提交CE的代码。\n\u003cbr\u003e\n\u003cbr\u003e\n输入保证每条提交记录是按照时间顺序给出,且不会有队伍在相同时间有超过一次的提交记录。\n"}},{"title":"Output","value":{"format":"HTML","content":"对于每组测试数据,输出一行包含两个数A和B,A代表这支队伍的通过题数,B代表这支队伍的总罚时。\n\u003cbr\u003e"}},{"title":"Sample Input","value":{"format":"HTML","content":"\u003cpre\u003e1\n3 5\n1002 00:02 AC\n1003 00:05 WA\n1003 00:06 WA\n1003 00:07 AC\n1002 04:59 AC\u003c/pre\u003e"}},{"title":"Sample Output","value":{"format":"HTML","content":"\u003cpre\u003e2 49\u003c/pre\u003e"}},{"title":"Hint","value":{"format":"HTML","content":"这支队伍在00:02时AC了题目1002,计入罚时2分钟\n\u003cbr\u003e然后他们在00:05和00:06分别WA了两发1003,并最终于00:07 AC掉1003,计入罚时20*2+7\u003d47分钟\n\u003cbr\u003e虽然他们在04:59时又AC了一次1002,但是此前他们已经AC过1002了,所以忽略。\n\u003cbr\u003e于是总罚时2+20*2+7\u003d49"}}]}