1

长风破浪会有时,直挂云帆济沧海  •  3天前


include <bits/stdc++.h>

using namespace std; int a[100], b[100]; int book[100]; int n; int ans = 1e9; void dfs(int x, int y,int z){

if(y == n){
	ans = min(ans, z);
	return;
}
for(int i = 1;i <= n;i++){
	if(book[i] == 1|| x == i){
		continue;
	}
	book[i] = 1;
	y++;

// cout << max(b[x],a[i]) << ' ';

	dfs(i,y,z + max(b[x],a[i]) + 1);
	y--;

// cout << y;

	book[i] = 0;
}

} int main(){

cin >> n;
for(int i = 1;i <= n;i++)cin >> a[i];
for(int i = 1;i <= n;i++)cin >> b[i];
for(int i = 1;i <= n;i++){
	book[i] = 1;
	dfs(i,1,1);
	book[i] = 0;
}
cout << ans;

return 0;

}


评论:

请先登录,才能进行评论