묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
'정렬' 관련된 문제는 강의의 어느 부분을 수강하면 되나요?
안녕하세요! 이 강의를 수강하며, 프로그래머스 문제 통해서 연습중인데요, 프로그래머스 문제 파트 중 '정렬'과 연관된 문제풀이 강의는 어떤 것인지 궁금합니다. 감사합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-B 질문입니다.
go 부분에서 이제 행을 뒤집거나 안뒤집거나에 대해서는 이해를 했습니다. 열에 대해서 h,t의 개수를 생각해야 하는건 알겠는데, 안에 있는 for문 중 i*=2를 왜 하는건지 이해가 가질 않습니다.
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1520.py
안녕하세요 ! 강의를 잘 보고있습니다 :)1520 문제를 처음 접하였을때, dp를 사용하지 않았었는데요강의를 보니 강사님께서도 처음에는 dp테이블을 사용하지 않고 푸시다가, 나중에 dp를 추가해주시더라구요 .. !이, 이유가 백준에서 시간제한이 걸리기 때문에, 이미 방문한곳은 다시 방문하지 않기위해 그러는 것 인가요 .. ?아직 들어야할 강의가 많아서, 문제가 이렇다 저렇다 말 할 수 없겠지만만약, 코테에서 위와같이 문제가 나오면, 시간제한이 걸리는지 아닌지를 확인할 방법이 없는데 항상 dp테이블을 생각하는것이 좋은 방법일지 궁금합니다 .. !
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
3강 1번에 대해 질문이 있습니다
안녕하세요 이번에 처음 코테를 공부해보는 학생입니다.혹시 아래와 같은 코드도 투 포인터 알고리즘이라고 할 수 있을까요? 그리고 좀 더 개선점이 있을까요? public class Main{public ArrayList<Integer> solution(int n,int m,ArrayList<Integer> arys){int start=0;while(start <n+m-1){if(arys.get(start)<=arys.get(start+1)){start++;}else{int tmp = arys.get(start);arys.set(start,arys.get(start+1));arys.set(start+1,tmp);start--;}}return arys;}public static void main(String[] args) {Main T = new Main();Scanner sc = new Scanner(System.in);int n = sc.nextInt();ArrayList<Integer> arys = new ArrayList<>();for(int i=0; i<n; i++){arys.add(sc.nextInt());}int m = sc.nextInt();for(int i=0; i<m; i++){arys.add(sc.nextInt());}for(int x:T.solution(n,m,arys)) System.out.print(x+" ");}}
-
해결됨코딩테스트 [ ALL IN ONE ]
다익스트라 final 노드 도착후에 바로 종료하지 않는 이유가 궁금합니다.
구현하신 코드를 보니 목적지에 도착한 이후에도 우선순위 큐를 모두 비우고 나서 값을 리턴하도록 함수를 작성하셨는데요, 목적지 도달 후 바로 반환 하는 것이 시간상 더 유리할 것 같은데 혹시 다른 이유가 있는걸까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-C 인구 이동 질문 있습니다
안녕하세요 큰돌님, 아래는 제가 강의 보고 코드를 그대로 구현했는데, 백준에 통과를 못하는 이유를 알 수 있을까요? ㅜㅜ 아무리 찾아보고 디버깅 해봐도 예제 문제 4,5번에 오답이 뜹니다.https://www.acmicpc.net/source/67562965그리고 추가 질문 있습니다.. 이전 강사님 영상에는 dfs 하실때 보통 dfs 함수내에 visited을 정의를 하셨는데, 이번 영상에는 dfs 에 visited를 정의를 안하신 이유도 궁금합니다, 혹시 이전 영상들처럼 dfs에 visited[y][x] = 1 걸어도 문제 풀이가 가능한지 여쭤드리고 싶습니다, 그리고 이번 영상에 다르게 하신 점도 이유도 알고 싶습니다 ㅎㅎ미리 감사합니다!
-
해결됨SQL 코딩테스트를 위한 첫 걸음
문제 주소 링크
안녕하세요 각 강의에 관한 문제가 링크가 따로 있었던거 같은데 없어진거 같아서 문의드리게 되었습니다. 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-D 왜 틀렸을까요?
알려주시면 감사드립니다 ㅠㅠhttp://boj.kr/55889bf2310f490a82888d282c975425
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R visited 안써도 괜찮나요 재 방문이 없나요
단 방향이라 그런가요
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-Q 치즈가 없는 경우는 고려하지 않나요?
뭔가 없을 수 도 있는 경우 무조건 있는 경우 구분 하기 어렵네요 한국말이 저번에 안전 지역 문제는 d=0인 비가 오지 않는 경우도 고려해야 하던데 3-D는 무조건 불이 있는 거 같은데 없는 경우도 고려하라고 해서 네... 잘 모르겠어요 문제가 뭐가 뭔지
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
12865 배낭문제
안녕하세요! 제 6강을 수강하고 탑다운 DP 문제 중 냅색문제를 백준에서 풀었을 때 계속 런타임에러가 나네요 ㅠ 혹시 이유를 알 수 있을까요 ? 제가 작성한 코드는 다음과 같습니다. #물건의 수 n와 배낭의 무게 k n,k = map(int,input().split()) #순서대로 배낭의 무게 w와 가치 v item = [list(map(int,input().split())) for _ in range(n)] dp = [[-1 for _ in range(10*6)] for _ in range(n)] #모든 경우의 수 생각하기 def bag(idx , weight ) : if weight > k : return -999 if idx == n : return 0 if dp[idx][weight] != -1 : return dp[idx][weight] #물건을 넣은 경우와 넣지 않은 경우를 비교해준다 dp[idx][weight] = max( bag(idx+1 , weight + item[idx][0]) + item[idx][1] , bag(idx+1 , weight)) return dp[idx][weight] ans = bag(0,0) ans
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
12865
def recur(idx, weight): if weight > K : return -99999 if idx == N : return 0 if dp[idx][weight] != -1: return dp[idx][weight] dp[idx][weight] = max(recur(idx + 1, weight + items[idx][0]) + items[idx][1], recur(idx + 1, weight)) return dp[idx][weight] N,K = map(int,input().split()) items = [list(map(int,input().split())) for _ in range(N)] #무게를 고려해서 가치를 담는 dp테이블, 무게는 얼마든지 커질 수 있으므로 10만, 그리고 물건개수만큼 N 작성 dp = [[-1 for _ in range(100_001)] for _ in range(N)] print(recur(0,0))recur(0,0) 재귀함수를 불렀는데 dp 테이블의 최대값이 찍히는게 잘 이해되지 않습니당...!당연히 dp테이블에서 max값을 찾아 출력해야 하는 줄 알았는데, 코드를 보니 그냥 print(recur(0,0))을 하네욥..!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-K 연결 되지 않아도 그래프로 쳐서
정점 5개 간선 4개1-2 3-4-5-3 이런 경우에도 그래프라서 V=E-1만 생각하면 안 되는거죠?
-
미해결코테 출제자가 알려주는 [코딩 테스트 with 파이썬]
선생님!
선생님 안녕하세요!이 강의를 결제하여 들은건 너무 잘한 일 같습니다!차근차근 한 부분도 놓치지 않고 천천히 설명해주셔서 감사해요현재 그리디 파트까지 마무리 했는데 너무 만족스러워요그래서 드리는 말씀인데 혹시 다른 자료구조나 알고리즘 (BFS, DFS, DP 등등) 을 사용한 PS 풀이 2탄 강의를 만드실 생각은 없으신가요!!?감사합니다
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
2_11 임시반장정하기 질문있습니다.
if (arr[i][k] == arr[j][k])라는 조건이 본인과 본인일 때도 카운터가 되기 때문에 (정답에는 지장이 없지만)if (i != j && arr[i][k] == arr[j][k]) i 와 j 가 다를 때만 카운트 하게 조건을 추가해줬는데 오답입니다가 뜹니다.다른 사람일 때만 같은 반인지 확인하면 되는 줄 알았는데 왜 안되는지 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-O 질문드립니다
http://boj.kr/34af1033b33c4392a7ea90529d920901while(scanf("%d", &n) != EOF) 로 코드를 만들었을땐한참 exe 파일을 찾을 수 없다고 나오다가while(cin >> n)로 변경하니까 정상 작동 되는데어떤게 문제였을까요?질문글 읽어주셔서 감사합니다!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
완전탐색 문제 유형은 DFS로 푸는 것만 있나요?
안녕하세요, 해당 강의에서 풀어주는 완전탐색 문제는 DFS 방식으로 푸는 법만 있나요?프로그래머스 등과 같은 곳에서 완전탐색 유형 문제를 풀어보니, DFS 방식으로만 푸는 것은 아닌듯 하여 질문 드려요!
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
재귀 경우의수 14501 퇴사문제
def recur(idx,money): global answer if idx == n: answer = max(answer, money) return if idx > n: return # idx 해당날에 상담 ㄱㄱ recur(idx + arr[idx][0], money + arr[idx][1]) # pass 하는날 recur(idx + 1, money) n = int(input()) arr = [[] for _ in range(n+1)] for i in range(n): t,p = map(int,input().split()) arr[i+1] = [t,p] answer = -999999 recur(1,0) print(answer)위는 제 코드입니다. 이 코드를 백준에 제출하면 오답이 나옵니다. 테스트 케이스의 경우에는 맞았는데.근데 위 코드에서 if에 해당하는 부분을 아래와 같이 고치면 정답이 나오더라고요.if idx == n+1: answer = max(answer, money) return if idx > n+1: return제가 아직 재귀에 대한 완벽한 이해가 없고, 어떤 식으로 재귀함수가 동작하는 지는 정확히 몰라서 구글링을 통해 재귀 함수는 스택방식으로 작용한다라는 내용도 공부해보고 왜 n+1은 통과고 n은 실패인지 암만 생각해봐도 모르겠네요,,도와주십시오!!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-Q go함수 마지막에
if(y==0&&x==m-1){ if(k==visited[y][x])return 1; return 0; }이렇게 되는데if(k==visited[y][x]){if(y==0&&x==m-1)}이렇게 해도 결과 같던데 이런 관점은 안 좋나요? 상관없나요?그리고 y==0&&x==m-1&&k==visited[y][x]이렇게 하면 왜 결과가 0으로 나올까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-P 풀면서
시작부터 3개 고르는 데에서 막혔는데vector<pair<int,int>>v 만들어서 i,j,k3개 고르는 연구소 문제 처럼 하려다 안돼서 포기하고visited[]=1;go();visited[]=0; 이런 것 만 봐서 visited[]=1이랑 go를 합치는건 생각도 못했는데문제가 다양한 만큼 틀을 배우지만 틀에 얽매이지 않는 이 모순 정말 자유롭게? 다양하게? 생각해야 알고리즘 풀 수 있네요...먼저 풀이 논리?를 적고 디테일 하게 함수를 채워야 되나봐요