NC236816. 牛牛的早八
描述
输入描述
第一行一个整数 代表案例数。
每组案例第一行一个整数 代表今年二月需要上早八的天数。
接下来共 行,每行一个字符串,格式为“”代表牛妹在 时 分进入教室( 没有前导零)。保证:
输出描述
输入共 行,每行两个整数分别代表当前案例中牛妹的迟到和旷课次数。
示例1
输入:
3 6 7:00 7:59 8:00 8:05 8:05 8:10 1 8:06 1 8:05
输出:
2 1 0 1 1 0
PHP 解法, 执行用时: 19ms, 内存消耗: 7032K, 提交时间: 2023-08-11 11:34:06
<?php $n = intval(fgets(STDIN)); for ( $i = 0; $i < $n; $i++ ) { $k = intval(fgets(STDIN)); $late = $miss = 0; for ( $j = 0; $j < $k; $j++ ) { $arr = explode(':', fgets(STDIN)); $m = intval($arr[0]) * 60 + intval($arr[1]); if ( $m < 481 ) { continue; } elseif ( $m < 486 ) { $late++; } else { $miss++; } } echo "{$late} {$miss}" . PHP_EOL; }
Python3 解法, 执行用时: 119ms, 内存消耗: 8780K, 提交时间: 2023-08-11 11:30:56
n = int(input()) for i in range(n): k = int(input()) late, miss = 0, 0 for j in range(k): a, b = map(int, input().split(':')) m = a * 60 + b if m < 481: pass elif m < 486: late += 1 else: miss += 1 print(late, miss)
Go 解法, 执行用时: 131ms, 内存消耗: 1748K, 提交时间: 2023-08-11 11:26:21
package main import "fmt" func solve() { var n, ans, res, a, b int fmt.Scan(&n) for n > 0 { fmt.Scanf("%d:%d", &a, &b) if a == 8 { if b > 5 { res++ } else if b != 0 { ans++ } } else if a > 8 { res++ } n-- } fmt.Printf("%d %d\n", ans, res) } func main() { var time int fmt.Scan(&time) for time > 0 { solve() time-- } }