본문 바로가기
반응형

[백준]214

[BaekJoon/백준] 14925번 목장 건설하기 1시간 붙잡다가, 못 풀 것 같아서 다른 사람들의 풀이를 참고한 뒤 풀었다. https://leesh111112.tistory.com/357 https://comyoung.tistory.com/205 이 문제를 연구소 문제처럼 푸려는 분도 있는데, 범위가 크기 때문에 절대 불가능하다. #include #define MIN(a, b) ((a> N >> M; for(int i = 1; i MAP[i][j]; } for(int i = 1; i 2022. 7. 15.
[BaekJoon/백준] 14500번 테트로미노 아마, 내가 풀었던 문제들 중에서 최장 시간이 걸린 문제인 것 같다. 질문 검색에 있는 모든 반례들은 다 해본 것 같다 정말. 근데 자꾸 6%에서 틀렸습니다가 떴는데, 이유는 범위 지정에서 문제였다... ( x < N 해야하는데 x 처음 뽑는 것이 메인에서 뽑는 경우. 주로 시작 위치 기준으로 상하좌우 이동 처리 관한 문제. 다른 한 가지 유형은, 처음 뽑는 것 부터 dfs 함수 내부에서 뽑는 것 ( https://hevton.tistory.com/585 ) 주로 특정 범위 전체에서 몇 개를 뽑을 때. 말 그대로, 메인에서 처음 뽑는 알고리즘은 당연히 메인에서 방문처리해주고 dfs 시작해야 하는 거고 dfs에서 모두 뽑는 것은 dfs에서만 방문처리하면 되는거고 차이 뿐이다. 어쨌든 이번 문제 코드는 이렇.. 2022. 7. 14.
[BaekJoon/백준] 16234번 인구 이동 문제를 SCC를 구하는 문제로 재해석해 적절하게 풀이하였다. 문제에서 말하는 '연합' 은 두 개 이상의 나라가 합쳐졌을 때 말하는 표현이고 나의 알고리즘에서 '연합'은 SCC를 말한다. 즉 하나의 나라도 연합이라고 칭할 수 있게 해줬다. 그 용어 정의 차이만 있을 뿐, 문제를 푸는데 전혀 지장이 없다. 따라서 인구이동이 일어나지 않는 경우는, 모든 나라가 SCC이므로 SCC가 N * N개 일 때 종료하기만 하면 된다. 복잡하게 풀었을까봐 내심 걱정했는데, 찾아보니 그런건 아닌 것 같다. #include #include #include using namespace std; int MAP[50][50]; int COP[50][50]; // SCC bool VISIT[50][50]; int N, L, R; i.. 2022. 7. 13.
[BaekJoon/백준 15686번 치킨 배달 처음엔 복잡하게 구현했었다. 테스트케이스는 모두 맞길래, 제출했었는데 컴파일 에러가 발생했다. 아무리 봐도 알고리즘이 복잡하다는 생각을 하고는 있었기에,, 풀이 방법을 참고해봤고 내 알고리즘에서 생략할 수 있는 부분이 많이 있단 것을 깨닫고 수정했다. 이 문제는, 전체 치킨 지역 중에서 조합으로 치킨집을 M개 뽑은 뒤에 집 별로 거리계산을 하기만 해주면 되는 문제였다. 변경 전 처음 코드 (틀림) #include #include #include #include using namespace std; int MAP[50][50]; bool CHECK[50][50]; int DEPTH[50][50]; int N, M; vector HOME; // x, y vector CHICKEN; // x * N + y v.. 2022. 7. 12.
반응형