【题解】
题意:给定一个n,把2n个人分为两组,再给定一个2n*2n的方阵,aij表示当第i个人和第j个人不在一个组时将得到的武力值,要求你分配输出最大的武力值之和。
思路:n<=14,dfs跑一遍即可。
【代码】
#include
using namespace std;
#define ll long long
ll a[30][30],d[30];
ll ans;
int n;
vector vec;
void dfs(int pos,ll sum)
{
if(vec.size()==n){
ans=max(ans,sum);
return;
}
if(pos>2*n) return;
ll cou=d[pos];
for(int i=0;i
【题面】