CF201B Guess That Car!

题目描述

awask 在停车场上进行一场“猜车”游戏。 该停车场的南北长度为 $4n$ 米,东西宽度为 $4m$ 米,每 $4$ 米都有一条网格线,把该停车场分割成了 $n \times m$ 个 $16$ 平方米的小块。其中每个小块**的正中心处**都停有一辆车。很容易知道,总共有 $n+1$ 条东西方向的网格线与 $m+1$ 条南北方向的网格线,它们产生了 $(n+1) \times (m+1)$ 个网格点, awask 就需要站在网格点上进行他的猜车游戏。 每一辆车都有一定的价值 $C_{i,j}$ ,若 awask 离某辆车的欧几里得距离为 $d$ ,那么 awask 猜到该辆车所花费的时间为 $ C_{i,j} \cdot d^2$ 。 现在 awask 只能在这 $(n+1) \times (m+1)$ 个网格点中选择任意一个点开始猜测每一辆车。一旦选择之后,不能更换。希望你能选到一个网格点,使 awask 猜到所有车所花费的时间最少。 提示:请不要使用 %lld 的格式读写64位整数。请使用 cin、cout 或 %I64d。

输入格式

第一行两个整数 $n,m (1 \leq n,m \le 1000)$ ,代表该停车场的大小。 接下来 $n$ 行,每行 $m$ 个整数,代表每辆汽车的价值 $C_{i,j}(0 \leq C_{i,j} \le 10^5)$。

输出格式

第一行一个数字, awask 猜到所有车所耗费的最小时间。 第二行两个数字,为 awask 所站格点的坐标 $L_{i,j}$。最西北方为 $(0,0)$ ,最东南方为 $(n,m)$。如果有多个符合答案的格点,那么优先选择 $i$ 小的点;如果在 $i$ 相同的一行中同样有多个符合的答案,那么优先选择 $j$ 小的点。

说明/提示

第一组数据的汽车价值分别为 | 3 | 4 | 5 | | :----------: | :----------: | :----------: | | 3 | 9 | 1 | 选择 $(1,1)$ 这个位置(在 $3,4,3,9$ 四个数字中间的格点),花费最小,为 $ 3 \cdot8 +3 \cdot8+4 \cdot8+9 \cdot8+5 \cdot40+1 \cdot40=392$ 下图为该停车场的平面坐标系示意图。