묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
연결요소개수 - 파이썬 풀이 공유
안녕하세요 저는 강사님 강의로 공부하고 파이썬으로 코테를 준비하고 있습니다. 저와 같은 상황에 계신분들과 공유하고 싶어 글을 올립니다. 파이썬 풀이에서 부족한 부분 알려주시면 수정하겠습니다.~import syssys.setrecursionlimit(10 ** 6)N, M = map(int, sys.stdin.readline().split())MAX = 1000 + 10graph = [[False for in range(MAX)] for in range(MAX)]visited = [False for in range(MAX)]for in range(M):x, y = map(int, sys.stdin.readline().split())graph[x][y] = True graph[y][x] = Truedef dfs(idx):visited[idx] = True for j in range(1, N + 1):if not visited[j] and graph[idx][j]:dfs(j)cnt = 0for i in range(1, N + 1):if not visited[i]:dfs(i)cnt += 1print(cnt)
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
조합 ? 문제 관련해서 질문 있습니다.
안녕하세요!문제를 풀다가 안돼는 부분이 있어서 질문드립니다.n개의 정수 중 r개를 뽑는 조합에 대한 총 경우의 수 문제인데테스트 케이스로 n = 30, r = 20 을 넣으면타임 아웃이 납니다. ide에서도 루프가 멈추지 않고요....다른 케이스는 통과하는데 이건 왜 안돼는지 모르겠습니다.1 <= r <= n<= 30import sys def ppopgi(arr, visited, start, depth, b): global count if depth == b: count += 1 return for i in range(start, len(arr)): if not visited[i]: visited[i] = True ppopgi(arr, visited, i+1, depth+1, b) visited[i] = False a, b = map(int, input().split()) arr = list(range(1, a+1)) count = 0 ppopgi(arr, [False]*len(arr), 0, 0, b) print(count)
-
미해결JavaScript 알고리즘 베스트 10
문제 풀이
안녕하세요!, 문제 8 ~ 11 까지 강의가 없는데 오류인가요?
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
완전탐색 강의 1090번 문제 풀이 방법 의문
완전탐색 강의 마지막 문제 1090번 문제 풀이 방법에 의문이 생겨서 질문 올려봅니다. 강의에서는 우리의 집 중에서 한 곳에 모이면 된다고 풀이를 하셨는데, 예시에 나온 4 15 14 15 16 14 15 16 154명이 모이기 위한 최적의 장소는 (15,15)입니다. 백준에서도 이것이 정답 좌표이고. 그래서 혹시 제가 1번 2번 3번 아이디어를 이해하는데에서 잘못 이해한 부분이 있을까 싶어 질문을 올립니다.(15 14) (15 16) (14 15) (16 15) 중에 하나에 모인다는 말이 아닌것인가요?
-
미해결JavaScript 알고리즘 베스트 10
github에 해당 레포를 찾을 수가 없어요.
안녕하세요, github에 해당 레포를 찾을 수가 없는데 링크 한번 더 확인 부탁드립니다!
-
미해결비전공자의 전공자 따라잡기 - 자료구조(with JavaScript)
1주차 숙제에 대한 해답 코드는 따로 제공되지 않나요??
1주차 마지막 강의인 숙제에 대한 코드를 따로 제공되지 않나요?
-
해결됨코딩테스트 [ ALL IN ONE ]
DFS BFS
그래프 요소의 문제에 접근할 때해당 문제를 DFS, BFS 방법 중어떤 방법을 사용하여 문제를 해결해야할지 항상 헷갈립니다.관련해서 문제 접근 방법론에 대해 따로 강의나 정리해주시면 감사하겠습니다.
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
final 선언 이유
Main 클래스 안에서MAX 변수에 대해 굳이 final로 초기화 하는 이유가 무엇일까요?
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
숫자의 합 구하기
import java.util.*; public class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int N = sc.nextInt(); String sNum = sc.next(); char[] cNum = sNum.toCharArray(); int sum = 0; for(int i=0; i<cNum.length; i++){ sum += cNum[i] - '0'; } System.out.println(sum); } }이 코드에서 int N = sc.nextInt(); 이렇게 한 이유가 문제 예제 이유 5, 54321 에서 5를 입력했기때문에 사용한 건가요??
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
숫자야구 문제 질문
숫자야구 문제 코드 부분에서약간 오류가 있는 것 같아서 질문드립니다.number, strike, ball에 각각 힌트를 분배할 때hint[0]~[2]가 아닌 arr[0]~[2]를 담으면서,arr[1]이 strike, arr[2]가 ball이 맞는 것 같은데영상에 나오는 코드를 다음과 같이 고치면 될까요?for arr in hint: number = arr[0] strike = arr[1] ball = arr[2]
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
이상한게 햇갈리는데요.....
저번 수업도 그렇고...반복문 작성할 때 아 이거는 i<N인가? M인가? 이게 햇갈리는데, 뭐 좋은 방법 없을까요?
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
혹시 구현문제의 대한 강의는 올라오지 않을까요?
혹시 구현문제의 대한 강의는 올라오지 않을까요?다음 예정된 강의는 어떤 종류의 알고리즘인지 궁금합니다.
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
강의 자료 관련 문의
안녕하세요 수업 잘 듣고 있습니다! 강의 자료 중에 어떤 것에는 코드가 첨부되어 있고 어떤 것에는 코드가 첨부되어 있지 않은데, 혹시 첨부되어 있지 않은 것은 추후에 업로드가 되는 것인지 따로 코드가 제공되지 않는 것인지 궁금하여 질문 남기게 되었습니다! 감사합니다
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
큐 구현 질문 드립니다
안녕하세요,doublylinkedlist 에서 insertAt 수정 중에if(newNode.next == null){ //새로 삽입한 노드가 마지막 노드라면 this.tail = newNode; }이 부분은 index == this.count 일 때 데이터를 삽입하는 경우에만 해당되는 것 같은데,else if문 밖으로 빼서 공통적으로 처리해주는 이유가 궁금합니다. 감사합니다!
-
미해결그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
insertAt() for문 질문있습니다.
안녕하세요. 질문 두 가지가 있습니다. 프로그래밍 입문자이며 언어를 배운 적이 없는 상태입니다. 연결리스트 - 구현 강의 중 insertAt()의 for문 입력 후 왜 currentNode = currentNode.next를 입력해주는 건가요? currentNode 가 currentNode.next를 가리켜 둘은 연결되어 있다는 것을 가리키기 위함인가요? 이 코드 한 줄을 입력 안 할 경우 어떤 문제가 생기나요?그리고 10분 26초 쯤에currentNode(7)가 새로운 노드를 가리키면 된다고 설명하는데 왜 코드는 currentNode = newNode 가 아니라currentNode.next = newNode 인 건가요?후자가 될 경우 currentNode.next인 (9)가 newNode를 가리키게 되는 거 아닌가요? 감사합니다.
-
해결됨그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
연결리스트 구현 return
다른 분께서 하신 질문을 보니 delete함수와 getNodeAt 함수에서 return을 하는 이유는 제거된 노드 값을 확인하거나 그 노드값을 얻기 위함이라고 하셨는데,delete함수에서 제거된 값은 왜, 그리고 어떻게 확인하는 것인지 이해가 가지 않아서 질문드립니다.저는 test.mjs 파일에서 console.log(this.deleteNode)를 입력하면 해당 변수의 값(제거된 값)이 출력될 것이라고 생각했으나TypeError: Cannot read properties of undefined (reading 'deleteNode')이러한 에러가 발생했습니다. deleteLast함수를 만들 때 return this.deleteAt(this.count-1); deleteAt함수에 이미 return이 포함되어 있는데 이 함수에 또 return을 포함하는 이유가 궁금합니다 감사합니다!
-
미해결코딩테스트 [ ALL IN ONE ]
자료구조 구현 및 해시 테이블 수강
안녕하세요, 어제부터 결제해서 잘 듣고 있는 학생입니다.저는 기계공학과를 전공하고 있고, 취업도 개발자 쪽을 하긴 하지만 IT기업이 아닌 중공업과 같이 기계공학과 관련있는 분야로 취직을 할 예정입니다.연구 분야 또한 기계 공학을 접목한 기계학습입니다.커리큘럼에 있는 연결리스트 (이건 직접 구현을 하는 것을 말합니다.)이나 해시테이블 같은 경우에는 제가 취직하려는 직종에서 잘 나오지 않는 알고리즘이라고 생각하는데 혹시 그래도 이를 꼼꼼히 공부를 해야할까요? (수강은 할 예정입니다.)
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
MAX 크기가 왜 1000000인가요?
정점의 수 N은 100,000개 까지인데이를 담는 배열의 최대 크기인 MAX가 왜1,000,000로 잡았는지 궁금합니다(+ 10은 연산 때문에 그렇다고 하셨던것같고)
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
안녕하세요 질문있습니다.
방향 그래프 무방향 그래프에 따라서 자료구조에 자료를 저장하는 방법이 다르다고 하셨습니다. 그런데 지금 이 문제에서는 방향그래프 아닌가요??간선,엣지들을 보면 모두 방향이 있는 거 같은데, 왜 무방향그래프를 저장할 때처럼 arraylist에 값을 저장하는지 모르겠습니다.
-
미해결Do it! 알고리즘 코딩테스트 with JAVA
union 코드에 질문 있습니다.
union 메소드 구현할 때 저는 find(a)와 find(b) 중 더 작은 수로 통일하기 위해 static void union(int a, int b) { int a_rep = find(a); // a의 대표값 int b_rep = find(b); // b의 대표값 int min = a_rep<b_rep ? a_rep:b_rep; parent[a] = min; parent[b] = min; } 이렇게 코드를 짰는데요.이렇게 하니 에러가 나는데 이유를 모르겠습니다 ㅠㅠ 늘 좋은 강의 감사합니다.