Deep Learning study

백준 14889문제 본문

백준 문제 코드

백준 14889문제

HwaniL.choi 2019. 12. 17. 20:41
반응형
#include <bits/stdc++.h>
using namespace std;

#define FOR(i,a,b) for(int i=a ; i<b ; i++)

int N,p[21][21],t,ANS = 1e9;

int score(){
    int a=0,b=0;
    FOR(i,0,N)
        if(t&(1<<i)){
            FOR(j,i+1,N) if(t&(1<<j)) a += (p[i][j] + p[j][i]);
        }else{
            FOR(j,i+1,N) if(!(t&(1<<j))) b += (p[i][j] + p[j][i]);
        }
    
    return abs(b-a);
}

void rec(int cur,int size){
    if(size == N/2){
        ANS = min(ANS,score());
        return;
    }

    FOR(i,cur,N){
        t+=(1<<i);
        rec(i+1,size+1);
        t-=(1<<i);
    }
}

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin >> N;
    FOR(i,0,N) FOR(j,0,N) cin >> p[i][j];

    rec(0,0);
    cout << ANS << endl;
    return 0;
}
반응형

'백준 문제 코드' 카테고리의 다른 글

백준 14888문제  (0) 2019.12.31
백준 14503문제  (0) 2019.12.18
백준 3190문제  (0) 2019.12.16
백준 14500문제  (0) 2019.12.16
백준 14499문제  (0) 2019.12.12
Comments