CF1517B.Morning Jogging
普及-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
The 2050 volunteers are organizing the "Run! Chase the Rising Sun" activity. Starting on Apr 25 at 7:30 am, runners will complete the 6km trail around the Yunqi town.
There are n+1 checkpoints on the trail. They are numbered by 0, 1, ..., n. A runner must start at checkpoint 0 and finish at checkpoint n. No checkpoint is skippable — he must run from checkpoint 0 to checkpoint 1, then from checkpoint 1 to checkpoint 2 and so on. Look at the picture in notes section for clarification.
Between any two adjacent checkpoints, there are m different paths to choose. For any 1≤i≤n, to run from checkpoint i−1 to checkpoint i, a runner can choose exactly one from the m possible paths. The length of the j-th path between checkpoint i−1 and i is bi,j for any 1≤j≤m and 1≤i≤n.
To test the trail, we have m runners. Each runner must run from the checkpoint 0 to the checkpoint n once, visiting all the checkpoints. Every path between every pair of adjacent checkpoints needs to be ran by exactly one runner. If a runner chooses the path of length li between checkpoint i−1 and i (1≤i≤n), his tiredness is $$\min_{i=1}^n l_i,$$ i. e. the minimum length of the paths he takes.
Please arrange the paths of the m runners to minimize the sum of tiredness of them.
2050 志愿者正在组织“奔跑吧!追逐初升的太阳”活动。活动将于 4 月 25 日上午 7:30 开始,跑者需沿云栖小镇环形路线完成 6 公里的赛程。
该路线共设有 n+1 个检查点,编号为 0,1,…,n。每位跑者必须从检查点 0 出发,并在检查点 n 完成赛程。所有检查点均不可跳过——跑者必须依次从检查点 0 跑至检查点 1,再从检查点 1 跑至检查点 2,依此类推。具体示意图请参见“备注”部分中的图片。
任意两个相邻检查点之间均有 m 条不同的可选路径。对任意 1≤i≤n,从检查点 i−1 到检查点 i 的 m 条路径中,跑者恰好选择其中一条。第 j 条路径(1≤j≤m)在检查点 i−1 与 i 之间的长度记为 bi,j(其中 1≤i≤n)。
为测试该赛道,我们安排了 m 名跑者。每名跑者必须各完成一次从检查点 0 到检查点 n 的全程奔跑,且必须经过全部检查点。此外,每一对相邻检查点之间的每一条路径,恰好由一名跑者跑过一次。若某位跑者在检查点 i−1 与 i 之间选择的路径长度为 li(1≤i≤n),则其疲劳值为
i=1minnli,
即其所选各段路径长度中的最小值。
请为这 m 名跑者合理分配路径,使得他们的疲劳值之和最小。
输入格式
Each test contains multiple test cases. The first line contains the number of test cases t (1≤t≤10000). Description of the test cases follows.
The first line of each test case contains two integers n and m (1≤n,m≤100).
The i-th of the next n lines contains m integers bi,1, bi,2, ..., bi,m (1≤bi,j≤109).
It is guaranteed that the sum of n⋅m over all test cases does not exceed 104.
每个测试包含多个测试用例。第一行包含测试用例的数量 t(1≤t≤10000)。随后是各测试用例的描述。
每个测试用例的第一行包含两个整数 n 和 m(1≤n,m≤100)。
接下来的 n 行中,第 i 行包含 m 个整数 bi,1、bi,2、...、bi,m(1≤bi,j≤109)。
保证所有测试用例中 n⋅m 的总和不超过 104。
输出格式
For each test case, output n lines. The j-th number in the i-th line should contain the length of the path that runner j chooses to run from checkpoint i−1 to checkpoint i. There should be exactly m integers in the i-th line and these integers should form a permuatation of bi,1, ..., bi,m for all 1≤i≤n.
If there are multiple answers, print any.
对于每个测试用例,输出 n 行。第 i 行中的第 j 个数应表示选手 j 从检查点 i−1 跑到检查点 i 所选择路径的长度。第 i 行中应恰好包含 m 个整数,且这些整数对所有 1≤i≤n 都构成 bi,1, ..., bi,m 的一个排列。
若存在多个合法答案,输出任意一个即可。
输入输出样例
输入#1
2 2 3 2 3 4 1 3 5 3 2 2 3 4 1 3 5
输出#1
2 3 4 5 3 1 2 3 4 1 3 5
说明/提示
In the first case, the sum of tiredness is min(2,5)+min(3,3)+min(4,1)=6.

In the second case, the sum of tiredness is min(2,4,3)+min(3,1,5)=3.
在第一种情况下,疲劳度之和为 min(2,5)+min(3,3)+min(4,1)=6。

在第二种情况下,疲劳度之和为 min(2,4,3)+min(3,1,5)=3。
输入解题思路,AI测评打分。不知道怎么写?