CF2035A.Sliding
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
在有 n 行和 m 列的人群中,每个人都有一个编号,从左到右,从上到下排列。具体来说,第 r 行第 c 列的位置表示为 (r,c),其编号为 (r−1)⋅m+c。
现在,位于位置 (r,c) 的人决定离开。假设这个人的编号是 i,那么所有编号大于 i 的人会依次前移,占据编号 j−1 的人的初始位置。例如:对于 n=2,m=3,r=1 和 c=2 的情况,如下图所示。

你的任务是计算每个受影响的人移动的曼哈顿距离之和。对于一个从位置 (r0,c0) 移动到位置 (r1,c1) 的人,其移动的曼哈顿距离定义为 ∣r0−r1∣+∣c0−c1∣。
输入格式
第一行输入一个整数 t(1≤t≤104),表示测试用例的数量。
接下来每个测试用例包含四个整数 n,m,r 和 c(1≤r≤n≤106,1≤c≤m≤106),表示行数、列数,以及离开者的初始位置。
输出格式
对于每个测试用例,输出一个整数,表示所有移动的人其曼哈顿距离之和。
输入输出样例
输入#1
4 2 3 1 2 2 2 2 1 1 1 1 1 1000000 1000000 1 1
输出#1
6 1 0 1999998000000
说明/提示
- 对于第一个测试用例,编号为 2 的人离开,编号为 3、4、5 和 6 的人需要移动,其移动距离分别为 1、3、1 和 1。因此,答案是 1+3+1+1=6。
- 对于第二个测试用例,编号为 3 的人离开,其后编号为 4 的人移动,答案为 1。
本翻译由 AI 自动生成
输入解题思路,AI测评打分。不知道怎么写?