• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

코드 체크 부탁 드리겠습니다.

21.03.30 19:47 작성 조회수 153

0

바둑 문제인데요, 주어진 테스트 케이스는 통괗하는데, 오답이 나옵니다.

리뷰 가능하실까요? 아니면 테스트 케이스 공유가 가능할까요?

#include <bits/stdc++.h>

using namespace std;

class Go

{

public:

    int white, black;

    Go(int white, int black) {

        this->white = white;

        this->black = black;

    }

};

int N, R, minv=INT_MAX;

int whitesum, blacksum;

int choice[6];

vector<Go> player;

void dfs(int l, int s)

{

    if (l >= R) {

        int white = 0, black = 0;

        for (int i=0; i<R; i++) {

            white += player[choice[i]].white;

            black += player[choice[i]].black;

        }

        black = blacksum - black;

        minv = min(minv, abs(white - black));

        return;

    }

    for (int i=s; i<N; i++) {

        choice[l] = i;

        dfs(l+1, i+1);

    }

}

int main(void)

{

    freopen("input.txt", "rt", stdin);

    cin >> N;

    R = N/2;

    for (int i=0; i<N; i++) {

        int white, black;

        cin >> white >> black;

        whitesum += white;

        blacksum += black;

        player.push_back(Go(white, black));

    }

    dfs(0, 0);

    cout << minv;

    return 0;

}

답변 1

답변을 작성해보세요.

0

안녕하세요^^

정상적인 코드입니다. 채점사이트가 채점을 제대로 못해주는 것 같습니다.

채점사이트를 제공해서 기존 채점폴더를 제공하지 않았었습니다. 

강의자료에 전  "it취업을 위하~~" 강좌처럼 채점폴더를 추가해 새로 업로드했습니다. 채점사이트가 이상하면 이 폴더에서 채점받으시고 오답이 나오면 해당 테스트케이스 파일 보면서 디버그해보시기 바랍니다.