※ 引述《SecondRun (南爹抠打)》之铭言:
: 2037. Minimum Number of Moves to Seat Everyone
: 有 n 个座位和 n 个学生在一个房间里。给你一个长度为 n 的 seats 阵列,其中 seats[i] 是第 i 个座位的位置。同样地,给你一个长度为 n 的 students 阵列,其中 students[j] 是第 j 个学生的位置。
: 你可以进行以下任意次数的移动:
: 增加或减少第 i 个学生的位置 1 (即,将第 i 个学生从位置 x 移动到 x + 1 或 x - 1)
: 返回将每个学生移动到一个座位的最小移动次数,使得没有两个学生在同一个座位上。
: 请注意,一开始可能有多个座位或学生位于相同位置。
: 思考: 贪婪
蛇摸智障题
我刚写按下去还以为会error就过了==
Code:
impl Solution {
pub fn min_moves_to_seat(mut seats: Vec<i32>, mut students: Vec<i32>)
-> i32
{
seats.sort();
students.sort();
let mut result = 0;
for i in 0..students.len() {
result += (seats[i] - students[i]).abs();
}
result
}
}