矩阵取数求最大和的有关问题

矩阵取数求最大和的问题
给定一个n*m的矩阵,n<=m<=500,在矩阵中取n个数出来,且这n个数中的任意两个都不能在同一行或同一列上,那么最大和该怎样求?我想了好久都没想到办法,搜索似乎会超时,贪心又似乎得不到正解……求算法高手解答!

------解决方案--------------------
我觉得只能穷举。而且穷举应该不慢啊。因为n个数,不能同行同列,可能性就500*500.
------解决方案--------------------
你这个问题跟经典的八皇后问题类似,搜索看看。