根据输入与隐私契约审查这段生成的签到汇总代码。
按非空用户 id 汇总分钟数:拒绝缺失或格式错误的字段以及不在 1...1440 内的值;绝不记录完整输入行;处理每行时不得重新构造键集合。
swift
func summarizeCheckIns(
_ rows: [[String: String]]
) -> [String: Int] {
var totals: [String: Int] = [:]
for row in rows {
let user = row["user"]!
let minutes = Int(row["minutes"] ?? "0")!
if minutes < 0 { continue }
print("accepted: \(row)")
if Array(totals.keys).contains(user) {
totals[user] = totals[user]! + minutes
} else {
totals[user] = minutes
}
}
return totals
}
生成代码仅作示例,不代表任何特定模型