[R51A] Forcecodes
数据规模:,。
思路
按题意直接模拟即可。设当前 rating 为 ,初始 。对每场比赛的表现分 ,依次执行更新
打完 场后的 即为答案。
由于 与 始终非负,整数除法 / 对应的就是向下取整,无需额外处理。
复杂度:时间 ,空间 (用于存 数组)。
仓颉实现
import std.console.*
import std.convert.*
main(): Int64 {
let reader = Console.stdIn
let first = reader.readln().getOrThrow().split(" ", removeEmpty: true).map({ p: String => Int64.parse(p) })
let n = first[0]
var x = first[1]
let a = reader.readln().getOrThrow().split(" ", removeEmpty: true).map({ p: String => Int64.parse(p) })
for (i in 0..n) {
x = (x + a[i]) / 2
}
println("${x}")
return 0
}
要点:
- 第一行的 与 一次性读入,第二行的 数组按行
.map读入,行尾多余空格由split(" ", removeEmpty: true)过滤。 - 与 始终非负,
/即为向下取整,无需对奇偶做特判。