λ¬Έμ
μ½λ
#include <iostream>
#include <vector>
using namespace std;
int map[101][101];
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
int N; cin>>N;
for(int i=0; i<N; i++){
for(int k=0; k<N; k++){
cin>>map[i][k];
}
}
int ans=9999;
for(int i=0; i<(1<<N); i++){ //000000~111111(λͺ¨λ 0λ²νμ μνλ κ²½μ°λΆν° λͺ¨λ 1λ²νμ μνλ κ²½μ°κΉμ§)
vector<int>first,second;
for(int k=0; k<N; k++){
if(i&(1<<k)) first.push_back(k); // iλ²μ§Έ μ§ν©μ kκ° ν¬ν¨λμ΄ μμΌλ©΄, 1λ²ν
else second.push_back(k); // ν¬ν¨λμ΄ μμ§ μλ€λ©΄, 2λ²ν
}
if(first.size()!=N/2) continue; //νμ΄ λ°λ°μ© μ λλμ΄ μ‘μλ μ§νx
int scoreA=0,scoreB=0;
for(int a=0; a<first.size(); a++){
for(int b=0; b<second.size(); b++){
if(a==b) continue;
scoreA+=map[first[a]][first[b]];
scoreB+=map[second[b]][second[a]];
}
}
ans=min(ans,abs(scoreA-scoreB));
}
cout<<ans;
}
'Algorithm π§π»βπ» > λ°±μ€(BOJ)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€,c++] 14921λ² - μ©μ‘ ν©μ±νκΈ° (0) | 2021.11.14 |
---|---|
[λ°±μ€,c++] 14920λ² - 3n+1 μμ΄ (0) | 2021.11.14 |
[λ°±μ€,c++] 14916λ² - κ±°μ€λ¦λ (0) | 2021.11.14 |
[λ°±μ€,c++] 1476λ² - λ μ§ κ³μ° (0) | 2021.11.14 |
[λ°±μ€,c++] 14724λ² - κ΄λ¦¬μλ λꡬ? (0) | 2021.11.11 |
[λ°±μ€,c++] 14720λ² - μ°μ μΆμ (0) | 2021.11.11 |
λκΈ