묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-K 팰린드롬 반례를 찾지 못하겠습니다.
백준 테스트 케이스는 전부 통과하는데, 내부 테스트에서 문제가 생긴것 같습니다. 반례를 찾지 못하겠습니다 .http://boj.kr/47c65fee4896418494c5eb382d780c2b감사합니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
그리디 알고리즘으로 풀어지는게 이해가 안됩니다.
아무리 생각해도 '현재 최선을 선택하는 것이 최종적으로도 최선이 된다.'라는 개념의 그리디 알고리즘이 이 문제에 적용되는게 이해가 안됩니다.만약 테스트 케이스가 아래와 같을 때,190 50180 60170 100160 70150 80140 90해당 그리디 알고리즘으로 풀게되면 선택되는 것은(190 50), (180, 60), (170, 100) 입니다.하지만, 실제로 최적으로 선발하는 방법은(190 50), (180, 60), (160, 70), (150, 80), (140, 90) 입니다.제가 생각 하기에는 키 내림차순으로 정렬한 후에, 최장으로 길어질 수 있는 무게 오름차순 순열을 고르는게 맞는 것 같은데, 무언가 잘못 생각하고 있는건가요?
-
해결됨김영한의 실전 자바 - 중급 2편
배열의 특징2 - 데이터 추가 에서 질문이요.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요. 궁금증이 생겨서 질문을 남깁니다.배열로 데이터를 첫 번째 위치에 추가, n 번째 위치에 추가, 마지막 위치에 추가 하는것 을 잘 보았습니다.근데 강의를 들으면서 객체 배열(ex: Integer)이면 어떻게 해야하지 라느 생각을 하게 되었습니다.30개 제한이 있는 객체 배열이 있고값이 20개(0~19) 까지만 담아져 있고, 나머지 값(19~29번째 )은 'null' 이라고 한다면, 마지막의 값(21번째에 넣겟다는 뜻입니다.)은 어떻게 넣지? 라는 생각을 하게 되었습니다.이런 경우 어떻게 해야 하나요?혹 나중 강의에 이런 내용 같은 게 나오나요?(그러면 강의를 통해서 배우면 되니까 안 알켜주셔도 됩니다.)답변 부탁 드립니다.
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
39번 두 배열 합치기 문제 채점 오류인가 코드 오류인가
안녕하세요 강의를 들으면서 코딩테스트를 준비하는 취준생입니다. 먼저 좋은 강의를 만들어주셔서 감사합니다. 질문드릴 사항은 39번 제가 풀고 채점을 돌렸는데 1 ~ 5 다 틀렸다고 뜹니다. 그래서 채점 폴터의 in1 ~ in4를 직접 넣고 돌린 결과를 out1 ~ out4까지 비교 해봤는데 제가봤을 때는 정답입니다. 그래서 뭐때문에 틀린지 여쭤보고 싶습니다. 아래는 제가 작성한 코드입니다. #include <stdio.h>#include <stdlib.h>#include <string.h>int main(void){ int N; scanf("%d", &N); int nArr = (int)malloc(N*sizeof(int)); for(int i = 0; i < N; i++) { scanf("%d", &nArr[i]); } int M; scanf("%d", &M); int mArr = (int)malloc(M*sizeof(int)); for(int i = 0; i < M; i++) { scanf("%d", &mArr[i]); } int res = (int)malloc((N+M)*sizeof(int)); for(int i = 0; i < N; i++) { res[i] = nArr[i]; } int jj = 0; for(int i = N; i < (N+M); i++) { res[i] = mArr[jj]; jj++; } int tmp; for(int i = 0; i < (N+M); i++) { for(int j = i+1; j < (N+M); j++) { if (res[i] > res[j]) { tmp = res[i]; res[i] = res[j]; res[j] = tmp; } } } for(int i = 0; i < (N+M); i++) { printf("%d ", res[i]); } free(nArr); free(mArr); free(res); return 0;}
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
안녕하세요 외부 문제 힌트
안녕하세요 강사님강사님 강의를 듣고 다른 코테를 풀던 중아직도 머릿속에서 잊혀지지 않는 문제가 있습니다. 이 문제는 O(n^2)으로 풀어서는 안되는데 제 생각엔 Dynamic Programming 문제인 거 같습니다. 일단 문제는 아래와 같은데 N 이 주어져 이 N은 1~200,000 이고 그N에 해당하는 숫자의다른 음의 정수, 0, 양의 정수가 주어집니다 예를 들어 데이터는 아래와 같습니다. 60 1 -1 2 -2 3이렇게 주어졌을 때 내가 한 숫자를 0으로 만들 수 있습니다.그리고 하나씩 차례대로 더했을 때 0이 가장 많이 나오는 경우의 수를 구하는 겁니다. 이 경우 제가 3을 0으로 만들면 첫 0 의 카운트 1개 그리고 두번째 1를 더해서 1이고 다시 -1를 더하면 0이 됩니다.이제 카운트는 2개고 2를 더하면 2고 -2를 더하면 0입니다. 다시 카운트가 3입니다.그리고 마지막 3을 0으로 만들면 카운트가 4가 됩니다.그래서 답은 4입니다.참고로 정렬은 불가합니다. 즉 숫자들이 나열되어 있을 때 그걸 하나씩 다 더해서 0이 최대로 나오는 경우를 세는 건데 이 때 그 수 중 딱 한번 0으로 만들 수 있다는 것입니다. 이문제가 DP 문제인 것 같은데 도저히 어떻게 풀어야 될지 감이 안잡힙니다.. 물론 강의 문제는 아니지만 도움을 주실 수 있을까 해서 요청드립니다.
-
미해결2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1090 문제의 2, 3번째 아이디어는 결국 같은거 아닌가요?
강의를 여러번 듣다가 그런건데요.결국엔 강사님이 2, 3번 아이디어는 동일한 아이디어인데, 잘못해서 구분짓고, 3번 아이디어에서도 설명이 잘못된것 같은데..혹시 제 말이 맞는걸까요?
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
1090 문제 관련하여 맨해튼 거리 최솟값에 대해 질문 있습니다.
Q1) 2, 3, ..., N차원 맨해튼 거리에서 각 차원은 서로 독립적인게 맞나요?ex) 2차원인 x, y에서 x의 맨해튼 거리의 최소값과 y축 거리의 최소값은 서로 독립적이라 전체 최소값은 결국 x 맨해튼 거리 최솟값인 x좌표, y 맨해튼 거리가 최솟값인 y 좌표 Q2) N+1개 이상의 N차원 맨해튼 거리의 최솟값은 항상 주어진 점 위에 존재하게 되는건가요?ex) 점이 3개 혹은 4개가 주어진 2차원 맨해튼 거리 최소값은 무조건 주어진 점 위에 있는것인지?
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
섹션2 기본알고리즘
안녕하세요, 강의를 듣고 계신 여러분!여러분의 학습을 돕기 위해 질문 안내를 드리고자 합니다. 1. chatGPT를 이용해보기단순한 의문은 chatGPT를 이용해도 해답을 찾을 수 있는 경우가 종종 있습니다! gpt에선 이러한 코드가 정상적이지 않은 코드라고 합니다.아래는 계속 되는 질문을 통해 얻어낸 답입니다. 2. 강의의 어떤 부분에 대한 질문이고, 어떤 부분이 궁금한지 명확히 알려주세요!섹션2 첫강의N = int(input())result = 0for i in range(1, N + 1):result += iprint(result) input()함수처리 이해가안됩니다 txt 파일에서 1 과 3을 입력해int()로 형변환이되면 정수 하나만 처리되는게 아닌지요? 파이참에선 입력이 1로 처리되는걸로봐선 1과 3 문자열로 처리되고 앞의 정수 1만 값을 인지하여 N = 1이 되는거 같습니다. 파이참과 강의에서 사용하는 애디터의 코드 가 다른 부분이 다른 강의에서도 많을까요?? input.txt에서1 3은 Sublime Text 3 어떻게 처리가되는걸까요 ?1은 입력이된고고 3, 10,100,1000등만 입력되는거네요…!?
-
미해결자바 코딩테스트 - it 대기업 유제
문제풀이 해설 질문입니다.
문제에서 아래의 구문이 있는데.영희는 산딸기가 없이는 기사를 지나쳐 갈 수 없다.영희 입장에서 bfs를 먼저 돌리면 board[nx][ny] != 3도 조건에 포함시켜야 되는거 아닌가요??
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
깁ㅗㄴ알고리즘
안녕하세요, 강의를 듣고 계신 여러분!여러분의 학습을 돕기 위해 질문 안내를 드리고자 합니다. 1. chatGPT를 이용해보기단순한 의문은 chatGPT를 이용해도 해답을 찾을 수 있는 경우가 종종 있습니다! 2. 강의의 어떤 부분에 대한 질문이고, 어떤 부분이 궁금한지 명확히 알려주세요!강의의 어느 파트에서 의문을 느끼고, 어떤 부분이 궁금한지를 명확히 제시해 주시면 답변에 도움이 됩니다!자신은 어떻게 이해했는지 또한 적어주면 좋습니다! ex) 섹션5의 '그래프 순회 (DFS & BFS) [개념]' 강의에서 DFS와 BFS 모두 그래프의 모든 노드를 탐색하는 알고리즘이라고 하셨고 시간 복잡도 또한 똑같다고 이해했습니다. 그러면 DFS와 BFS 중에서 어떤 알고리즘이 더 효율적인지 구별하는 것은 의미가 없는 것일까요? 어느 파트섹션5의 '그래프 순회 (DFS & BFS) [개념]' 강의자신은 어떻게 이해했는지DFS와 BFS 모두 그래프의 모든 노드를 탐색하는 알고리즘이라고 하셨고 시간 복잡도 또한 똑같다고 이해어떤 부분이 궁금한지 DFS와 BFS 중에서 어떤 알고리즘이 더 효율적인지 구별하는 것은 의미가 없는 것일까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-I 질문있습니다.
http://boj.kr/4b11a8bf3b45426db8f2ee73adf6c896 문제가 잘 이해가 되지 않는 경우인데요..숫자의 앞에 0이 있는 경우에는 정리하면서 생략할 수 있다 그럼 아래 입력에서는 11이 나와야하는것이 아닌가요..?입력: 10001 선생님 출력: 10001 제 출력: 11
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
런타임 에러: 메모리
안녕하세요 강사님, 재귀함수 이해하기[문제풀이]: BOJ 10870 문제 풀이에서 궁금한 점이 있어 질문드립니다. 아래는 제 코드입니다. 백준 제출시 런타임 에러가 발생합니다.시간 복잡도는 O(n)이 나와서 문제가 없는 듯한데,재귀 호출이 너무 깊어져서 발생하는 문제인지, 궁금하여 여쭤봅니다. 감사합니다.import sys input1 = int(sys.stdin.readline()) def fibo(n, n_1, n_2): if n == 1: return n_1 else: return fibo(n-1, n_1+n_2, n_1) result = fibo(input1, 1, 0) print(result)
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-E 질문 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. int na = max(0, a - _a[i][0]); int nb = max(0, b - _a[i][1]); int nc = max(0, c - _a[i][2]);선생님 이 코드가 이해가 잘 안됩니다. 저는 처음에 빼는 과정을 백트래킹으로 풀어야 되나라는 생각을 가졌습니다. 왜냐하면 빼고 나서 0을 넘어가 버리거나 또는 0 근처에서 끝날거 같은 경우를 생각해야 된다고 생각을 했습니다. 하지만 이런식으로 하면 결국 6번만 돌리고 "0을 넘어가 버리거나 또는 0 근처에서 끝날거 같은 경우"가 발생하지 않나요???
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-F 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 이문제..강의도 보고 문제를 여러번 봐도 이해가 안되는데 어떡하죠?!...
-
해결됨카카오 코테 6주 합격! 실전 파이썬 코딩테스트
학습 자료 관련해서 질문드려요
안녕하세요! 수업 잘 듣고 있습니다 ㅎㅎ 다름 아니라 각 챕터 마다 제공해주시는 사전문제 자료와 수업에서 보여주시는 자료가 조금 차이가 있는 것 같은데 혹시 수업에서 보여주시는 자료 제공은 안 되는 걸까요?아니면 제가 못 찾는 것 일까요? 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6주차 부터는 pdf교안이 어딨는건가요?
6주차 부터는 pdf교안이 어딨는건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-Q bfs시간초과
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 큰돌님! https://www.acmicpc.net/source/share/07a82a5f33424bcca66273c307cfe5fcbfs로도 구현해보고 싶어서 구현해봤는데, 시간초과가 납니다! 제가 생각하기에는 시간 초과 날 곳이 없어보여서 질문드립니다ㅠㅠㅠ
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질문
seq[5]이 0인 경우에만 1이 들어가고 만약 0이 아니면 seq[6]의 자리에 1이 들어가야 하는데, 이러한 로직이 어디서 구현되고 있는건지 잘 감이 안옵니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
잘 이해가안됩니다..! ㅠㅠ
seq의 값이 이미 들어있는 경우, 다음 칸에 값이 들어가야하는데 이 로직이 어떻게 구현되고 있는지 감이 안옵니다..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-E 반례 케이스 문의드립니다.
http://boj.kr/9a7b0f57dd734354a847d0d68b5890f0안녕하세요. 백준에서 50프로 정도 진행되었다가 틀렸다고 나오는데 반례가 어떤건지 찾질 못하겠습니다ㅜ코드 바꿔야할거 같은데 반례를 찾아야 궁금증이 풀릴거 같아서요. 함 확인 부탁드립니다.