[프로그래머스 알고리즘 고득점 Kit][그래프][Java] 방의 개수
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/49190 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr내가 지나간 점을 내가 지나 온 길이 아닌 방향으로 도달한다면 하나의 방이 생김그렇다면 내가 밟은 점을 기록하고 다시 도달했을 때밟은 점인지 지나온 길인지 아닌지 판별해야함x * row + y 와 같은 인코딩 방식 + Set 으로 진행하려다가class로 풀어보고 싶었음같은 x값 y값이라도 객체가 다르면 다르다고 인식하기 때문에equals 와 hashCode를 오버라이드 해줘서 같은 좌표면 같은 점이라 인식하도록 함문제를 풀 수 있었음여기서 교점이 꼭 점이..
[프로그래머스 알고리즘 고득점 Kit][그래프][Java] 순위
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/49191 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 정답 코드 뭔가 스태틱 변수를 안쓰고 메서드로 분리하려다 보니 복잡해졌는데내가 이긴 사람 수와 내가 진 사람 수의 합이 나를 제외한 n-1 과 같으면 순위를 알 수 있다.그래서 2개의 단방향 그래프를 기록하고 bfs 2번을 돌리는 식으로 계산했다.모든 노드의 거리를 알 수 있는 플로이드 워셜로도 풀 수 있다.import java.util.*;class Solution { public int solution(int n, int[][] resul..
[프로그래머스 알고리즘 고득점 Kit][그래프][Java] 가장 먼 노드
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/49189 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr정답 코드문제를 대충 읽어서 최단 거리로 이동했을 때 가장 먼 노드들의 개수를 구하는 건데가장 먼 노드의 거리를 구했었다가 틀리고 바로 수정 bfs로 1번 노드에서 각 노드에 도달하기까지 지나온 최소 개수를 count배열로 저장하고가장 많이 지나온(가장 먼) 노드를 찾기 위해 max 로 최대를 계속 업데이트해주고마지막에 count 배열에 max와 같은 가장 멀리 떨어져 있는 노드들의 개수를 세고 반환해 준다.import java.util.*;class S..