묻고 답해요
143만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
[Python] 백준 1090번 문제
n = int(input()) list = [list(map(int, input().split())) for _ in range(n)] fi_answer = [int(1e6)] * n #초기 배열 생성 x_list = [] y_list = [] for x, y in list: #후보군 리스트 생성 x_list.append(x) y_list.append(y) for x_pnt in x_list: for y_pnt in y_list: answer = [] for x, y in list: #입력 x, y #어느 한 점에서 입력위치로부터의 거리 최솟값 계산 answer.append(abs(x_pnt-x) + abs(y_pnt-y)) # ex) [1,4,6,7], [0,2,3,4] answer.sort() distance_cost = 0 #k번째 마다 이동 비용의 최소값 계산 for i in range(n): distance_cost += answer[i] #1~k if fi_answer[i] > distance_cost: fi_answer[i] = distance_cost print(*fi_answer)안녕하세요! 백준 1090번 문제에 대한 질문입니다. 다음과 같이 짠 코드에서 IDE에서는 결과가 잘 나오지만, 백준 제출했을 경우 틀렸습니다만 나옵니다. 아무리 수정하고 찾아봐도 이유를 잘 모르겠어서 문의드립니다.
-
해결됨카카오 코테 6주 합격! 실전 파이썬 코딩테스트
대기업 코테 난이도
갑자기 든 생각입니다만..백준 기준으로 골드4 정도 되면 무난하다고 하셨는데신입 기준인가요? 경력직 기준인가요?무지몽매한 질문 읽어주셔서 감사합니다;
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
7576번 풀이 코드 관련 질문
안녕하세요 선생님. 7576번 토마토 문제를 풀기 위해 코드를 짜서 제출했는데 자꾸 틀렸다고 처리가 되어서 어디가 문제인지 궁금하여 질문드리려 합니다. time matrix 대신에 visit matrix를 쓰는거 말고는 예시답안과 거의 일치하는것 같은데 어디가 문제일까요?import sys from collections import deque def bfs(cands): global data, N, M, min_dist, dx, dy visit = [[False] * M for _ in range(N)] q = deque() for (i,j) in cands: q.append([i,j,0]) visit[i][j] = True while q: x,y,dep = q.popleft() min_dist[x][y] = min(min_dist[x][y], dep) for di, dj in zip(dx,dy): ni = x + di nj = y + dj if (0<= ni < N) and (0<=nj<M) and (not visit[ni][nj]) and (data[ni][nj] == 0): q.append([ni,nj,dep+1]) visit[ni][nj] = True dx = [0,1,0,-1] dy = [1,0,-1,0] M, N = map(int, input().split()) data = [] for _ in range(N): data.append(list(map(int, input().split()))) min_dist = [[1e6]*M for _ in range(N)] cands = [] for i in range(N): for j in range(M): if data[i][j] == 1: cands.append((i,j)) if data[i][j] == -1: min_dist[i][j] = -1 bfs(cands) val = max(max(min_dist)) if val == 1e6: print(-1) else: print(val)
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
헤드노드에 관해..
계속 그리면서 이해하다가 딜레마에 빠져 질문드립니다 ..새 노드 추가할때의 그림을 그려보며 이해중이였는데,else{pNewNode->pNext = g_pHeadNode;g_pHeadNode = pNewNode;}이 코드는 이미 헤드노드가 가리키는 '원래노드'가 따로 있는건데그렇다면 pNewNode의 pNext엔 헤드노드 주소값을 넣으면pNewNode는 AddNewNode에서 초기화된 각자의 멤버값을 가지면서 pNext를 따라가면 헤드노드가 나오게 되고, 그 헤드노드의 pNext를 따라가면 '원래노드'가 나오게 되는데그 상태로 g_pHeadNode = pNewNode; 를 수행하게 되면 헤드노드에 pNewNode값이 오버라이트되게 되는건데 그럼 이 상황에선기존헤드노드에 뉴노드멤버들의 값들과 pNext엔 헤드노드의 주소값, 이걸 따라가면 뉴노드멤버들의 값들과 pNext엔 헤드노드가 가리켰던 '원래노드'의 주소값, 이걸 따라가면 '원래노드'멤버들의 값과 pNext값 . . . 이렇게 생각하면 되는건가요 ?그럼 결국엔 이 상황에선 g_pHeadNode와 pNewNode는 pNext를 제외한 모든 멤버변수들이 같은값을 가지고 있는 상황인거라고 해석하면 되는건가요 ? ( 뭔가 3개의 노드가 다 다른 멤버변수값을 가져야할것만 같은데, 2개의 노드가 같은 멤버변수값을 가지는거같아 이상하여 이해한게 맞나, 아니면 개념을 잘못잡은건가 싶어 질문드립니다 )질문이 길어져 죄송합니다 . . .
-
미해결[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
재귀함수 질문
재귀함수에서 보통 베이스 케이스에 리턴이 있는 경우를 많이 봤는데 베이스 케이스 부분에 return 안쓰는거랑 return 쓰고 그 뒤에 비워놓는거랑 같은 건가요??예를 들어 이 두개가 같은건가요? (함수 안 부분 띄어쓰기해도 질문등록하면 다 왼쪽으로 정렬되서 보이네요ㅠ)함수1: def function()for _ in range(N):... 함수 2: def function()return for _ in range(N):...
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
강의자료에서
for x in range (1, k+1): # 가방 무게가 x일 때 # 물건을 담을 수 있을 때 (x보다 무게가 작거나 같을 때) if x < weight : dp[y][x] = dp[y-1][x] # 물건을 담을 수 없을 때 ( 전에 넣어뒀던 무게로 유지) else: dp[y][x] = max(dp[y-1][x],dp[y-1][x-weight] + value )이렇게 나와있는데, x < weight이면 물건을 못담을때 아닌가요??
-
미해결김영한의 실전 자바 - 중급 2편
인텔리제이 SDK 오류
인텔리제이에서 java-mid2 폴더를 열면 파일들이 안보이는데 SDK 오류 같습니다. 어떤 버전의 SDK 써야 오류 안나나요? 지금은 Eclipse Termurin 21.0.4 -aarch64 설정되어 있네요
-
미해결머신러닝, 딥러닝 입문 : 알고리즘 이해하기
강의자료 문의
강의에서 사용되는 강의자료를 제공해주실 수 있나요?
-
미해결[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
백준 1260 (DFS 와 BFS) 프린트 위치 질문
안녕하세요 🙂 bfs 에서 질문이 있는데 왜 프린트(print(idx, end = ' ')를 for loop 안에서 queue.append(i) 한 다음 프린트하지 않고 큐에서 팝할때 프린트 하나요?
-
미해결김영한의 실전 자바 - 중급 2편
배열도 리스트라고 할 수 있나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]<직접 구현하는 배열 리스트1 -시작 2:15초>리스트의 정의를 보았을 때, 순서가 있고 중복을 허용하는 자료구조를 리스트라고 한다. 배열: 순서가 있고 중복을 허용하지만 크기가 정적으로 고정됨. 리스트: 순서가 있고 중복을 허용하지만, 크기가 정적으로 변할 수 있음. 배열은 리스트에 포함이 되는 것 같기도, 안 되는 것 같기도 합니다..!정의를 보면 배열은 리스트에 포함되는 것 같고,리스트와 대조해보면 리스트가 아닌 것 같아요..! 배열도 리스트 자료구조인가요..?
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
2133번 문제풀이 관련 질문
안녕하세요 선생님. 이전 두 질문에 대한 답변이 많은 도움이 되었습니다. 감사합니다.2133번 문제의 DP 1번 풀이에서 O(N^2) 풀이를 소개해주셨는데 아래와 같이 dp 테이블을 갱신할 때 sum_dp 테이블을 같이 갱신을 해주면 시간복잡도가 O(N)으로 줄일 수 있지 않나 싶어 질문드립니다.N = int(input()) if N % 2 != 0: print(0) else: n = N//2 dp = [1] * (n+1) sum_dp = [1] * (n+1) for i in range(1,n+1): dp[i] = sum_dp[i-1] * 2 + dp[i-1] sum_dp[i] = sum_dp[i-1] + dp[i] print(dp[-1]) 그리고 이건 다른 종류의 질문인데 혹시 그래프 부분이 실제로 코테에 많이 등장하나요? 제가 조금 급하게 준비하고 있는 상태라 이론을 필수 알고리즘2까지만 들어도 될지 아니면 그래프까지 다 들어야될지 고민중입니다. 조언 주시면 감사하겠습니다!
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
2503 문제 제한 조건 질문!
두 번째, 세 번째 자리수의 0이면 안된다는 제한 사항은 없지 않나요? 이렇게 탐색하면 틀렸다고 나와서 질문드립니다!for a in range(1, 10): for b in range(10): for c in range(10):
-
해결됨김영한의 실전 자바 - 중급 2편
Map에 있는 entry에 대해서 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. entry에 대해서, 뭔가 꺼림직한게 있어서 질문을 드립니다.entry에 대해서 더 자세히 설명해 주실 수 있으신가요?entry가 key와 value의 집합 이라고 이해가 되는데? 뭔가 애매해서 질문을 드립니다.꺼림직하고 애매한데, 어떻게 설명해야 할지 어렵네요.그래서 그냥 저가 느낌(생각) 그대로 질문을 올리는것입니다.답변 부탁 드립니다.
-
해결됨[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
촌수계산(백준 2644) 질문
영상 2:53왜 연결된 노드중에 가장 작은 노드부터 방문해야 하나요??
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
AddNewNode 함수 구현시 질문입니다.
void AddNewNode(int age, char pszName, char pszPhone){USERDATA* pNewNode = (USERDATA*)malloc(sizeof(USERDATA));pNewNode->age = age;strcpy_s(pNewNode->name, sizeof(pNewNode->name), pszName);strcpy_s(pNewNode->phone, sizeof(pNewNode->phone), pszPhone);pNewNode->pNext = NULL;강사님 위 코드 볼드체부분에서 pNewNode 포인터값이 널값임에 따라 역참조 경고가 발생합니다.그러나 제 생각에는 malloc함수로 할당받은 힙메모리 주소가 담겨져 있을 것인데 왜 이런 오류가 발생하는지 궁금합니다.
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
1987번 관련 질문입니다.
1987번 제 풀이가 선생님의 리스트 풀이와 비슷하다고 생각해서 제출을 해봤는데 시간 초과가 나는 것 같습니다. 이상하다고 생각해서 선생님께서 작성해주신 예시코드도 복붙해봤는데 똑같이 시간 초과가 나는 것 같아서요... 혹시 뭐가 문제일까요? 컴퓨터마다 시간이 달라서 그런걸까요?
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
3085번 사탕 게임에서 제 풀이가 왜 틀린걸로 처리되는지 잘 모르겠습니다.
안녕하세요 선생님. 백준 3085번 풀이2와 제 풀이가 비슷한 것 같은데 제 풀이는 틀린 것으로 나오는데 어떤 부분이 잘못됐는지 잘 모르겠습니다. 제가 어떤 부분을 놓치고 있는지 알려주시면 감사하겠습니다!import sys from itertools import combinations def input(): return sys.stdin.readline().rstrip() def get_max(i,j): global data, n ser1 = data[i] ser2 = [data[k][j] for k in range(n)] return max(count_max(ser1), count_max(ser2)) def count_max(ser): count = 0 bef = '.' for idx in range(len(ser)): if bef != ser[idx]: count = 1 else: count += 1 bef = ser[idx] return count n = int(input()) data = [] for _ in range(n): data.append(list(input())) dx = [0,1,-1,0] dy = [1,0,0,-1] cur_max = 0 for i in range(n): for j in range(n): if i == j: cur_max = max(cur_max, get_max(i, j)) for di, dj in zip(dx,dy): ni = i + di nj = j + dj if not ((0 <= ni < n) & (0 <= nj < n)): continue if (data[ni][nj] == data[i][j]): continue data[i][j], data[ni][nj] = data[ni][nj], data[i][j] cur_max = max(cur_max, get_max(i, j)) data[i][j], data[ni][nj] = data[ni][nj], data[i][j] print(cur_max)
-
미해결그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
자바스크립트 Map과 어떤 차이가 있나요??
이어지는 강의에서 구현해주신 HashTable을 자바스크립트 Map을 사용해서 구현해도 되나요? 안된다면 둘의 차이점이 뭔지 헷갈립니다ㅜㅜ 친절한 강의 감사드려요!
-
해결됨김영한의 실전 자바 - 중급 2편
영한 강사님! 타입 이레이저 방식의 한계 부분 질문
제네릭 타입 이레이저 PDF 기준 30p 부분인데 컴파일 이후에는 제네릭 타입 정보가 존재하지 않기 때문에instanceof나 new를 허용하지 않는다는건 잘 이해를 했습니다. 근데 밑에 코드를 보면 public void create() 부분이 일단은public void create() {return new T();} 이 부분이public T create() {return new T();}로 되어야하는거 아닌가요?
-
미해결김영한의 실전 자바 - 중급 2편
제네릭 타입 이레이저 오타인가요?
제네릭 타입 이레이저 PDF 기준 30p 부분인데 컴파일 부분에서 제네릭 타입 정보가 존재하지 않기 때문에instanceof나 new를 허용하지 않는다는건 잘 이해를 했습니다. 근데 밑에 코드를 보면 public void create() 부분이 일단은public void <T> T create() {} 로 되어야하는게 아닌가요?