안녕하세요 풀이 잘 보았습니다. 그런데 이해가 좀 안가는 부분이 있어 질문드립니다. Bfs 함수 선언하기 전 이중 for 문 돌리고 맵이 1이고 chk가 false인 경우 cnt+=1을 해주는데 이렇게 하면 print(cnt)했을때 맵에 있는 1의 갯수를 전부 다 세는것(전부 15개)이 아닌 1이 이어져 있는 부분만 세는것 같은데 어떤 원리로 4개만 출력되는건지 궁금합니다..
c 으로 공부하고 있는 현역 학생 전공자입니다. 설명 영상 정말 훌륭하고 이해하는데 막힘이 없었지만 다른 언어로 구현을 하려다보니 어려운 점이 있는 것 같습니다. 혹시 c 로 이 로직을 구현 할 때 이미 구현되어 있는 Queue에 x, y를 삽입하는 방향으로 진행 하면서 코드를 작성하는 것인지.. 아니면 x와 y가 삽입 될 서로 다른 Queue를 만들어야하는지.. 감이 잡히질 않네요....
q에 추가/삭제하는 과정이 반복되는데, 이때 추가되는 경우는 한정적이기에 결국에는 추가되는 것보다 삭제되는 것이 더 많아지게 됩니다 이때 q는 아무것도 들어있지 않게 되고, False로 작용(?)해서 while문 탈출하게 됩니다. 살짝 설명이 부족할수도 있다 생각되어 추가설명해드려요 !!
안녕하세요, 이중 포문 돌릴 때 y를 먼저 돌린다고 하셨는데, 이 부분을 좀 더 정확히 설명해주실 수 있으실까요? 특히 이중 for 문에서 j값으로 받을 때 range는 row값이 들어가는데 이 부분이랑, bfs함수 내에서 y, x를 뒤바꾸어서 놓은 부분이 정확히 이해가 되지 않아서요. 확인 부탁드립니다.
와와 대박입니다 ㅋㅋㅋ문제접근부터 시간복잡도 계산 풀이과정까지 너무 이해하기 쉬웠어요 dfs도 있으면 챙겨볼게용
정독시작! 백준 진도가 안나가서 고민이었는데 강사님 조언대로 30분 룰+아이디어,시간복잡도,자료구조 3단계로 생각해보는 방법으로 따라갑니다
경기과학고 신입생인데 진짜 이해가 한번에 됐습니다 정말 감사합니다
너무 좋아요! 이렇게 시간복잡도 까지 명쾌하게 알려주는강의는 첨봤어요!
넘 친절하고 잘 알려주셔서 감사합니다 잘보고가용
비 전공자도 읽고 갑니다.
강의 잘 들었습니다 😃😃 BFS, DFS 봐도 봐도 너무 헷갈리네욥 ㅜㅜ ㅎㅎ
다른언어로 코테 준비중인데 영상 너무 도움됩니다! 감사합니다!
그저 빛.... 선생님 감사합니다
와 진자 수알못인데... 정말 감사합니다.
강의가 너무 좋아요 짱짱!! 고맙습니다
13:44 여기서 엣지가 4가나오는건 6*5사이즈 배열이고 최대값으로 계산하면 4V이상 아닌가요?
감사합니다!
잘봣습니다
선생님 처음으로 코딩테스트 공부를 하고 있는데 시작부터 난이도가 있는거 같습니다. 기본적인 파이썬 문법은 알고 있는 상태입니다. 코딩테스트를 공부하기 전 선생님이 올려주신 강의 순서대로 들으면 되는게 맞나요?
감사합니다 저기 2억은 어떻게 나온건가요? 2억이란 숫자는 (14:02)
감사합니다
우정님, 저두 감사합니다 ㅎㅎ ~
안녕하세요 풀이 잘 보았습니다. 그런데 이해가 좀 안가는 부분이 있어 질문드립니다. Bfs 함수 선언하기 전 이중 for 문 돌리고 맵이 1이고 chk가 false인 경우 cnt+=1을 해주는데 이렇게 하면 print(cnt)했을때 맵에 있는 1의 갯수를 전부 다 세는것(전부 15개)이 아닌 1이 이어져 있는 부분만 세는것 같은데 어떤 원리로 4개만 출력되는건지 궁금합니다..
장고님 코드에서는,
main 함수에서 변수 cnt는 숫자 1이 이어진 전체 group cnt라고 이해하시면 되고, dfs 함수에서 변수 rs라고 표기한 것이 group 내 숫자 1이 이어진 갯수라고 이해하시면 될 것 같네요.
저도 이 부분이 이해가 안가네요.. 지금은 이해하셨나요??
개발자 Django님 알고리즘 강의 순서가 중요도 순서 같은데 맞나요?
c 으로 공부하고 있는 현역 학생 전공자입니다. 설명 영상 정말 훌륭하고 이해하는데 막힘이 없었지만 다른 언어로 구현을 하려다보니 어려운 점이 있는 것 같습니다. 혹시 c 로 이 로직을 구현 할 때 이미 구현되어 있는 Queue에 x, y를 삽입하는 방향으로 진행 하면서 코드를 작성하는 것인지.. 아니면 x와 y가 삽입 될 서로 다른 Queue를 만들어야하는지.. 감이 잡히질 않네요....
안녕하세요. 강의로 정말 많은 도움 받고 있는 학생입니다. 개인 블로그에 공부한 것을 정리하고 있는데 출처 표시로 영상의 링크를 첨부해도 괜찮을까요? 늘 감사드립니다.
넵 얼마든지입니다!
좌표 문제는 트리라고 생각하면 되는건가요?
영상에서는 deque함수가 없고 코드에는 있는데 무슨차이인가요?
감사합니다
코드 한부분이 이해가 안가서 질문드립니다
q = deque()
다음에
while q:
이런식으로 while문을 돌리는데
while문뒤에 true인경우에 while문이 돌텐데
q가 어떤 조건일때 true가 돼서 while문을 탈출하는건가요?
while 문 뒤가 false일때 while문을 탈출하게 되는데요
q에 아무것도 들어있지 않을때 탈출하게됩니다
q에 추가/삭제하는 과정이 반복되는데, 이때 추가되는 경우는 한정적이기에 결국에는 추가되는 것보다 삭제되는 것이 더 많아지게 됩니다 이때 q는 아무것도 들어있지 않게 되고, False로 작용(?)해서 while문 탈출하게 됩니다. 살짝 설명이 부족할수도 있다 생각되어 추가설명해드려요 !!
안녕하세요, 이중 포문 돌릴 때 y를 먼저 돌린다고 하셨는데, 이 부분을 좀 더 정확히 설명해주실 수 있으실까요? 특히 이중 for 문에서 j값으로 받을 때 range는 row값이 들어가는데 이 부분이랑, bfs함수 내에서 y, x를 뒤바꾸어서 놓은 부분이 정확히 이해가 되지 않아서요. 확인 부탁드립니다.
y, x를 어떤것을 먼저 하냐는 성향차이 인것 같아요.
어떤거로 해도 상관없지만,
문제를 빠르게 풀기위해서, 자기만의 규칙?은 정립해놓으셔야해요
안녕하세요혹시 queue 라이브러리 사용 안하고 강의 코드처럼하고 q.pop(0) 하고 사용해도 되는 건가요?
deque 라이브러리를 사용하면 popleft()를 이용하여 방문한 노드를 재방문하지 않도록 처리해주는데 여기서는 방문하지 않은 노드 [False]를 방문한 노드 [True]로 바꿔줌으로써 그 역할을 대신 한 것으로 보이네요 ㅎㅎ
어려워요...ㅋㅋㅋ
안녕하세요 bfs dfs 알고리즘 영상을 찾다가 보게 되었는데 매우 좋은 강의라서 댓글 남깁니다.
저런 아이디어를 찾는 것이 매우 어렵다고 느껴지는데 아이디어 찾는 팁 같은게 있을까요ㅠㅠ
문제 많이푸시면 어느정도 감이오실꺼에요.
추가로, 왜 이 방법을 떠올렸는지 주석으로 적으면서 푸시면 루틴이 보이실꺼에요