728x90

DFS 3

백준 6987 월드컵 문제 해설(파이썬), dfs/시뮬레이션 연습 문제

해설 코드만 궁금한 분은 깃허브 링크 눌러주세요~ GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 문제 이해는, 거의 항상 그렇듯, 쉽다. 총 6개 팀이 리그전 느낌으로 모든 팀과 각각 승부를 겨루게 되는데, 이미 결과가 모두 나온 상태로 입력값이 주어진다. 각 6 팀의 승, 무, 패가 기록되어 총 18개의 숫자가 4줄 입력되어 매 줄마다 가능한 결과인지 불가능한 결과인지를 1, 0으로 출력하면 된다. 문제 해결 논리 모든 케이스를 해봐야한다. A팀이 B팀에 대해서 이긴/비긴/진 경우 -> A팀이 C팀에 대해서 이긴/비긴..

백준 12869 뮤탈리스크 풀이 (파이썬) dfs는 안되고 bfs는 되는 dp문제

코드만 궁금한 분은 깃허브 링크 눌러주세요..! 일단 나는 이 문제를 처음에 dfs로 풀었었다. 근데 아무리 해도 안돼서;(특히 25%에서 계속 안됨) 이유를 생각해봤다. 문제에서 경우의수가 너무 많은 만큼 dp로 3차원 리스트를 만들어서 이미 확인한 경우는 확인 안 하는 식으로 해서 문제를 풀어야 한다. 근데 이 때 이미 확인 안하는 것은, 이전에 확인한게 최선이라는 확답이 있는 경우에만 가능하다. 그런데 dfs로 문제를 풀면 그때까지의 계산 횟수가 얼마이든간에 우선적으로 많은 부분을 방문하게 되고, 이후에 계산 횟수가 더 적게 같은 상태에 도달할 수 있더라도 그 부분을 방문하지 않아버림으로 인해 오류가 나게 된다. dfs라도 방문/비방문 리스트가 아니라 어떤 값의 쌍까지 오는데에 걸린 계산횟수를 저장..

백준 17070번 파이프 옮기기 1 문제 풀이/코드 해설 (파이썬) 삼성 A형 기출

코드만 궁금한 분은 링크 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명을 대충 하자면.. 1. NxN크기의 0으로 구성된 격자가 있고, 맨 좌측 상단에 파이프가 - 방향으로 놓여져있다. [0,0], [0,1]인덱스에 있다고 생각하면편함! 2. 그 파이프의 오른쪽 끝이 격자의 가장 오른쪽 아래 [N-1, N-1]에 닿도록 파이프를 계속 움직이면 되는데.. 3. 파이프가 - 방향으로 있으면 그 다음은 오른쪽 혹은 오른쪽 아래 방향으로만 이동 가능하고 파이프가 1 방향으로 있으면 그 다음엔 아래 혹은 오른쪽 아래방향으로만 이동 가..

728x90