[R1B] 砖块覆盖
- 难度 入门
- 时限 1s
- 空限 512m
- 数学
数据规模:,。
思路
每块砖面积为 ,覆盖的总面积必须是偶数,因此 为奇数时无解。
当 为偶数时, 与 至少有一个是偶数:若 为偶数,把 的砖竖着铺满 行;否则 为偶数,用 的砖横着铺满 列,一定存在覆盖方案。
所以只需要判断 的奇偶性。
复杂度:时间 ,空间 。
仓颉实现
import std.env.*
import std.convert.*
let reader = getStdIn()
func solve(): Unit {
let arr = reader.readln().getOrThrow().split(" ")
let n = Int64.parse(arr[0])
let m = Int64.parse(arr[1])
if ((n * m) % 2 == 0) {
println("Yes")
} else {
println("No")
}
}
main(): Int64 {
let t = Int64.parse(reader.readln().getOrThrow())
for (_ in 1..=t) {
solve()
}
return 0
}
要点:
- , 不超过 ,用
Int64计算不存在溢出。