처음에 빈칸마다 탐색해서 들어갈 수 있는 숫자 넣고 다시 탐색 반복 (시간초과)한번만 탐색하고 재귀 돌리는 것으로 바꿈 (어떤 분의 풀이 참고..)
처음 짠 코드(통과) : 처음에 자기자신에게 가는 경로를 없다고 가정하고 0으로 초기화하지 않고 무한대로 두고 플로이드 와샬함아예 자기 자신으로 가는 경로를 무한대로 두고 플로이드 와샬하고 나중에 자기 자신 -> 임의의 노드 -> 자기 자신으로 가는 경로 (사이클) 중
힙을 이용해서 풀었다. 힙에서 하나씩 빼서 만약 키가 더 큰 사람의 수가 같으면 임시 힙에 넣어주고 조건에 해당되는 사람들이 많아서 임시힙에 여러개가 들어가면 키가 가장 작은 것 넣고 나머지는 다시 힙에 넣어서 정렬하였다 (키가 작은 것을 넣은 이유는 다음에 키가 더
처음에 잘린 랜선의 개수를 저런 식으로 풀어놔서 시간 초과 + 코드 자체도 걍 틀림잘린 랜선의 개수를 구하는 방법을 간단하게 바꿨고 계속 틀렸다길래 뭔가 했더니최소값 (l) = 0, 최대값 (r) = 100001 이런식으로 설정해서 틀림. 길이의 최소는 0이 아니라 1
다익스트라 : 그래프는 만들지 않았지만 이동 가능한 곳이 정해져있어서 아래쪽을 약간 변형함. 순간이동은 가중치 0, 아닌 건 가중치 1bfs : 탐색하는데 만약 check의 값이 크다면 갱신해주었다. 그래서 최단거리를 구함while 문을 이렇게 고쳐서 가중치를 표현함.
bfs를 <1. 그람이 없는 경우 2. 그람이 있는 경우> 두번 돌렸고 나눠서 코드 짬1\. 그람이 없는 경우 : 공주님에게 도착할 수 있는 경우만 최소값 연산2\. 그람이 있는 경우 : 없을 때 그람까지의 거리 + 있을 때 그람 ~ 공주까지의 거리. 이 연산은
데이터프레임 (Dataframe) : 표 형식의 자료구조시리즈의 모음 칼럼, 인덱스(행의 칼럼 이름), 값으로 구성시리즈 (Series) : 배열 형식의 자료구조값의 배열 + 인덱스 배열 pd.Series()인덱스 정보 전달 : index와 values값 지정파이썬 딕
다른 bfs와 달리 큐를 집합으로 만들고 check배열은 만들지 않음. 모든 경우를 탐색하는데 같은 경로는 탐색하지 않기 위해 check는 안쓰고 큐를 집합으로 만들어서 중복을 피해줌