묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
dfs 매개변수에서 y,x 를 왜 순서를 반대로 쓰셨는지 궁금합니다.
점프왕 젤리문제에서 dfs 메서드에 dfs(int x, int y)가 아닌 dfs(int y, int x)인지 궁금합니다!이전 문제부터 계속 궁금해했는데, 왜 순서를 바꾸셨는지에 대한 명확한 이유를 못찾겠어서 질문올렸습니다.// 점프왕 젤리 import java.util.*; import java.io.*; class Jump_king_jelly { static final int MAX = 3 + 100 + 10; static int map[][]; static boolean visited[][]; static int N; static int dirY[] = {1, 0}; static int dirX[] = {0, 1}; public static void dfs(int y, int x) { visited[y][x] = true; if(y == N && x == N) return; for(int i = 0; i < 2; i++) { int newY = y + dirY[i] * map[y][x]; int newX = x + dirX[i] * map[y][x]; if(visited[newY][newX] == false) { dfs(newY, newX); } } } public static void main(String[] args) throws IOException { // 0. 입력 및 초기화 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); N = Integer.parseInt(br.readLine()); map = new int[MAX][MAX]; visited = new boolean[MAX][MAX]; // 1. map에 정보 반영 for(int i = 1; i <= N; i++) { StringTokenizer st = new StringTokenizer(br.readLine()); for(int j = 1; j <= N; j++) { map[i][j] = Integer.parseInt(st.nextToken()); } } // 2. dfs 수행 dfs(1,1); // 3. 출력 if(visited[N][N]) bw.write("HaruHaru"); else bw.write("Hing"); bw.close(); br.close(); } }
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
[최적화 (정수론) 21:41 강의 질문] 문제 설명 중에 8까지의 예시를 이해하기 어렵습니다.
안녕하세요 강사님!파이썬 코딩테스트 도전하고 싶은 코린이입니다.강의를 듣고 있던 와중에 21:41초에서 계산하는 8까지의 예시 케이스를 설명하는데, 결과로 나오는 수열이 어떤 수열인지, 연산은 어떻게 되는건지 잘 이해가 되지 않습니다... 1 2 3 4 5 6 7 81 2 1 ... <<< 이게 무슨 수열인거죠? 어떻게 나온거죠? 조금만 더 상세히 설명해주시면 감사하겠습니다...문제 지시문과 영상을 여러번 읽어보아도 잘 이해가 되지 않아서 질문 남깁니다!
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
코딩 센세 입니다!
이번에 이직 후 회사에서 많은 것을 배우고 밤늦게까지 정리하며 잠드는 날들을 반복하고 있습니다! (외국어의 벽도 느끼고 있습니다 ... 하하 ) 질문해주신 질문들의 답변을 못달아드려서, 강의 수정을 빨리 빨리 못해드려서 정말 죄송합니다 ㅠㅜ... 항상 많은 질문 해주시고 공부해주시는 분들 감사합니다! 바로 답변을 못달아드릴때도 있지만 제 강의 열심히 들으시고 생기시는 궁금증들 질문해주시는 건 정말 정말 기뻐요 😄 제가 바로 답을 못 드리더라도 꼭 답을 드릴테니 간단한 궁금증이나 생각들도 모두 커뮤니티에 꼭 남겨주세요! 항상 많은 힘을 주셔서 감사합니다 😃 !!!!! 오늘도 다들 화이팅이에요!
-
해결됨[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
22479번 문제 런타임 에러 도와주세요 ㅠㅠ
24479번, 강의 사진과 같이 아래 링크처럼 파이썬으로 코딩했는데, 런타임 에러가 나고 있어요 ㅠㅠ 도와주세요 https://www.acmicpc.net/source/70097735 강의 영상마다 질문이 있으면 언제든 그리고 바로 질문 남겨주세요! 질문할 때 가장 정확하게 이해할 수 있습니다.해당 영상과 관련된 질문들을 해주실 때 제가 가장 정확히 답변 드릴 수 있습니다!취업 전반의 상담이나, "제 코드가 왜 틀렸는지 알려주세요"와 같이 광범위한 질문은, 질문자의 상황에 따라 답변이 달라질 수 있기 때문에, 정확한 답변을 드리기가 어렵습니다 :(이런 분들을 위해서는 멘토링 항목으로 별도 제공하고 있으니, 다음 링크를 참고해주세요!이 링크를 통해서는 본인의 코드가 왜 틀렸는지 모를 때 질문을 주셔도 좋고, 취업 전반(면접 준비, 자소서, CS 면접 등)에 관련한 질문을 주시면 답변 드리겠습니다 :)"이 질문은 해도 되나?"라는 생각이 드신다면 우선 남겨주세요! 제가 답변 드리기 어려운 건 멘토링에 올려 달라고 재요청 드리겠습니다 :)
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1강 문제2 (백준 # 14568)
n = int(input()) answer = 0 for i in range(1, n+1): for j in range(1, n+1): for k in range(1, n+1): if i + j + k == n: if i % 2 == 0: if j >= k+2: if i >= 1 and j >= 1 and k >= 1: answer += 1 print(answer)왜 if i >= 1 and j >= 1 and k >= 1: 이 조건이 없어도 정답처리가 되나요??
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
(숫자의 합)1<=N <=100 사이의 값
N이 1과 100사이의 값이 왜 char인지 보기위해서 모든타입의 범위를 보았는데 char 범위가 \u0000~\uffff(0~2^15-1)이더라구요 이게 1과 100의 값인건가요?
-
미해결코딩테스트 [ ALL IN ONE ]
o(1)과 o(n)이 헷갈려요
big o(1)은 한번의 연산만 한다는건 이해를했는데 o(n)은 정확히 어떤뜻인지 모르겠어요..
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
소수구하기-백준 1929 질문
안녕하세요 강의 너무너무 잘보고 있습니다소수구하기 백준 1929 강의 중for(소수의 배수값을 N까지 반복) for (int j=i+i; j<=N; j=j+i){ }이 부분에서 for문 시작 ( j=i+i )이랑 증감식 ( j=j+i ) 이 이해가 잘 되지않아질문 남깁니다.그리고 저 for문은 컨티뉴일 경우에는 실행이 안되는건가요 ?(ex)4이면 컨티뉴 >> 하고 for문을 도는건가요?) 감사합니다
-
해결됨코딩테스트 [ ALL IN ONE ]
백트래킹 강의 언제 올라오나요?
다른 글에서 12월 1일안에 다 올라온다는 글을 봤는데 아직도 안올라와서요
-
해결됨코딩테스트 [ ALL IN ONE ]
공부 방법에 대해 질문이 있습니다.
처음에는 문제만 보고 1시간정도 고민해서 발상이 떠오르지 않았을 때만 발상 관련 강의를 보고, 그 다음에 또 1시간 동안 고민해서 발상을 코드로 옮기는 작업을 했는데도 테스트 케이스를 통과하지 못해서 마지못해 코드 구현 강의를 보았습니다. 그런데 이러한 bfs, dfs문제는 그냥 틀이므로 암기하라고 하셨을 때 허탈감이 들었습니다. 이러면 그냥 코테문제의 전형적인 틀이라고 받아들이고, 암기한 방법으로 다른 문제에 응용하면 되나요?
-
해결됨실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
(메타클래스) 해당 강의 코드 혹시 올려주실 수 있을까요?
질문은 많으시면 많을수록 좋습니다. 가능한 빠른 답변 드리겠습니다.원활한 답변을 위해, 자세한 질문 사항 부탁드려요 열심히 타이핑해서 저장을 해뒀는데 실수로 삭제를 해버렸네요. 복습 겸 다시 듣고 있는데 혹시 다른 강의처럼 코드를 올려주실 수 있을까요?
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
05_adtFileIO 질문있어요.
search -> edit -> save 중 save에 궁금한 게 있습니다.int SaveNodeToFile(MYNODE* pNode)를 보면파일에서 불러낸 경우만 고려돼있습니다.신규 데이터를 찾아서 수정하는 경우에는 저장하지 않고 프로그램 종료 시 신규 데이터 일괄로 저장하는 방법을 써야할까요? pNode->bNew 값을 따져서 신규인지 구분하고 ab+모드로 파일 끝에 저장하는 건 생각했는데파일에 저장했으니 bNew를 false로 수정해야하나?수정하면 offset이 0이라 다시 검색할 때 offset이 0인 데이터를 찾을텐데? 그럼 offset 값은 어떻게 주지? bNew 값을 true로 저장하고 신규 데이터 일괄 저장할 때 덮어 써야하나? 라는 고민에 빠졌습니다. 어떤 방법이 좋을까요?
-
해결됨코딩테스트 [ ALL IN ONE ]
강의자료 노션 링크 언제 보내주시는 걸까요?
어제 노션 링크 요청드렸었는데, 혹시 언제 받아볼 수 있나요?
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
#11653 소인수분해 문제(최적화 관련)
아래와 같이 코드를 작성하였는데 답은 맞췄지만 강의에서 말씀하신 제곱근 아이디어가 반영되어있지 않습니다.아래 코드를 더 최적화 할 수 있는 아이디어가 있나요? #11653 소인수분해 N = int(input()) divide = True while(divide): for i in range(2, N+1): if N % i == 0: print(i) N = N//i break if N == 1 : divide = False
-
해결됨코딩테스트 [ ALL IN ONE ]
Hash Table 질문있습니다.
질문1. 해시테이블 (Hash Table)강의 마지막부분에서 파이썬은 딕셔너리로 잘구분되어있다고 하셨는데요. 해쉬테이블이 파이썬에서 딕셔너리인가요? 질문2. 제가 원했던 코드는 dir 라는 딕셔너리 변수에 possible 값이 있으면 그부분을 False로 적용시킬려고 했는데 왜 안되나요?질문3. 함수내부에서 print(dir)을 하면 딕셔너리가 출력이 되는데 밖에서 하면 <built-in function dir>이런식으로 출력이 됩니다. 배열은 함수 내부나 외부에서도 출력이 잘 되는데 딕셔너리는 직역변수로 인식이 되나요?질문4. for y in dir: 2번째 for문에 옆에 처럼 안하는 이유는 딕셔너리는 순번이 없어서 그런건가요?import sys sys.stdin = open("input.txt", "r") from collections import deque def two_sum(nums,target): # n=len(nums) dir={} for x in nums: dir[x]=True for y in nums: possible=target-dir[y] if possible in dir: dir[possible] = False print(dir)#{4: True, 1: True, 9: True, 7: True, 5: True, 3: True, 16: True} #제가 원했던 코드는 dir 라는 딕셔너리 변수에 possible 값이 있으면 그부분을 False로 적용시킬려고 했는데 왜 안되나요? # 아래처럼요. # {4: True, 1: True, 9: True, 7: True, 5: False, 3: True, 16: True} two_sum(nums=[4,1,9,7,5,3,16],target=14) print(dir)#<built-in function dir>
-
해결됨코딩테스트 [ ALL IN ONE ]
key + in 관련 질문입니다.
설명 감사드립니다.섹션 4 '[코테 적용] 👉 [2번 문제] key in (후반부) ' 2:45 부분을 공부중입니다.두 가지 질문이 있습니다. 1.이 내용 설명에 의하면 Big O notation에 대해for num in num_dict: => O(n)if num -1 not in num_dict: => O(1)while targer in num_dict: => O(1)이렇게 되는건가요? 2.if 또는 while + 딕셔너리 사용은 항상 Big O notation이 O(1)이 되는건가요? 아니면 상황에 따라 if 또는 while + dict의 시간복잡도가 달라질 수도 있는건가요? 감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
11724 문제 질문
안녕하세요. 공부하다가 또 질문이 생겨 다시 한 번 질문 드립니다...리스트를 조회하는 것보다 딕셔너리를 조회하는 것이 더 빠를 거 같아서 문제의 그래프를 딕셔너리 자료형으로 바꿔주고 있는데요.제가 작성한 코드가 로컬에서 예시를 넣었을 때는 잘 되는데 백준에서는 틀린 답이라고 나옵니다..코드를 첨부하여 질문 드리고 싶은데, 멘토링 부분이 어디있는지 알려주시면 감사하겠습니다!
-
해결됨[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
그래프 초기화
안녕하세요. 선생님 덕분에 멋진 강의를 듣고 있는 학생입니다.이제 유형 1을 다 수강했는데, graph를 초기화할 때 보통 N의 개수가 적으면 불리언 2차원 배열로 선언하고, N의 개수가 많으면 빈리스트로 구성된 2차원 리스트로 선언하는데요.그냥 모든 문제에 빈리스트로 구성된 2차원 배열을 선언하지 않는 이유가 N의 개수가 적으면 배열로 선언하고 조회하는 게 더 빠르기 때문인지 여쭤봐도 될까요?
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
투포인터 #22988 문제 답안에서 빠진 게 있네요
투포인터 s == e 일 경우에 remain 을 1 추가 한다음에는 break 해서 while 문을 벗어나게 해주셔야 합니다. 안 그럼 그 다음 if 문에서 cnt 가 하나 추가되어 버립니다
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
2강 정수론 #15736 질문입니다.
n = int(input()) answer = 0 for i in range(n+1): if i**2 > n: break else: answer = i print(answer)이렇게 풀었는데, 백준에서 틀렸습니다.. 왜 틀렸을까요??