F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

寻宝游戏

Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 512000/512000 K (Java/Others)
Total Submission(s): 709    Accepted Submission(s): 178


Problem Description
小Q最近迷上了一款寻宝游戏,这款游戏中每局都会生成一个$n\times m$的网格地图,从上往下依次编号为第$1$行到第$n$行,从左往右依次编号为第$1$列到第$m$列。每个格子上都有不同数量的金币,第$i$行第$j$列的格子上的金币数量为$a_{i,j}$。

小Q一开始位于$(1,1)$,每次他可以往右或者往下走,每当他经过某个格子时,他就可以拿走这个格子上的所有金币。小Q不能走出这个地图,当小Q不能再行动时,游戏结束。显然当且仅当小Q位于$(n,m)$时,游戏才会结束。

一轮游戏的得分为这一轮中收集到的金币总量,而在游戏开始前,因为小Q是超级VIP用户,所以他有$k$次机会交换某两个格子中的金币数。这$k$次机会不一定要用完,请写一个程序帮助小Q在一轮内拿到尽可能多的金币。
 

Input
第一行包含一个正整数$T(1\leq T\leq 10)$,表示测试数据的组数。

每组数据第一行包含三个整数$n,m,k(2\leq n,m\leq 50,0\leq k\leq 20)$,分别表示地图的长宽以及交换的次数。

接下来$n$行,每行$m$个整数$a_{i,j}(0\leq a_{i,j}\leq 10^6)$,依次表示每个格子中金币的数量。
 

Output
对于每组数据,输出一行一个整数,即能收集到的金币数量的最大可能值。
 

Sample Input
2 3 4 0 1 2 3 4 9 8 7 6 5 4 7 2 5 5 1 9 9 9 0 0 0 0 9 0 0 0 0 0 0 0 0 0 9 0 0 9 0 9 9 9
 

Sample Output
34 81
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-11-22 14:58:38, Gzip enabled