묻고 답해요
167만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-B char배열과 int배열 질문입니다.
http://boj.kr/c486a4712da546db8d98b08c3e5084f4제 코드중에 a배열을 int로 하였더니 예제출력이 9가나와서 오답입니다.동일한코드에서 int a배열을 char배열로 바꿧더니 정답이 8이됩니다.int만 char로 바꾸었는데 정답이 바뀔수 있나요?제가 알기로는 int a[]하고 a에 'W'를 집어넣거나 a[ny]=='W' 동일하다고 알고있는데 제가 잘못알고잇던것같습니다.char a 배열로 선언후 cin>>a[i][j]를 하면 따닥따닥입력도 한글자씩 입력되는지int a 배열로 했을때 왜 맞왜틀인지 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 p154 rotate질문입니다
1, 2, 3, 4, 5, 6을시계방향 : 6, 1, 2, 3, 4, 5반시계방향 : 2, 3, 4, 5, 6, 1이 된다고 설명하셨는데여기까지는 이해가 됩니다.그런데 아래 예제코드에 보면 begin, end 의 결과가 2, 3, 4, 5, 6, 1이 되어있습니다.그러면 begin, end가 반시계방향이라는 말인데p156에 보면 반시계방향은 rbegin, rend을 사용해서 그 결과가 6, 1, 2, 3, 4, 5가 된다고 했습니다.그리고 위에서 반시계방향은 2, 3, 4, 5, 6, 1이라고 했는데 어디서 뭐가 잘못되었는지 혼란스럽습니다...
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
공부방향에 대한 질문이 있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 현재 제 수준이 백준기준 실버 3~2 정도라고 생각합니다.그래서 강사님 풀이들 중 골드5에서 어려운 문제들부터는 어떤 알고리즘을 써야겠구나 정도는 인식을 하지만막상 구현을 하지 못해서 강사님의 문제풀이를 보고 이해하고 풀이를 기반으로 하여 그 문제를 다시 푸는 방법으로 공부를 하고 있습니다.(사실상 이해를 기반으로 암기하여 다시 풀어보는 듯 합니다.)모든 공부가 그렇듯 본인이 실력이 늘고 있는지 여부를 알기가 쉽지 않아 혹시 지금 제 공부방식대로 해도 괜찮을지 조언을 듣고 싶습니다.혹시 괜찮은 방법이 있다면 알고 싶습니다.!감사합니다!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[3주차 개념 #1 강의] 승철이의 문단속 질문
안녕하세요 큰돌님,재귀를 아직도 정복 못 해서 복습 중에 있습니다. 리뉴얼 된 개념강의라서 냅따 돌려보고 있구요. 보다가 질문이 있어서 글을 작성합니다.문제 : 승철이의 문단속승철이는 도쿄 위의 빨간 구름위에 올라가있다. 이 구름은 그대로 내버려두면 땅으로 떨어져 100만명의 사상자가 발생한다. 구름을 멈추는 방법은 구름의 특정 위치에 요석을 꽂으면 된다. 해당 위치에는 숫자가 표기가 되어있고 몇 개를 골라 숫자의 합이 “소수"가 될 때 구름은 멈춘다. 총 몇 개의 경우의 수가 있는지 말하라.N개의 요석 후보의 숫자와 다음 줄에 해당 숫자들이 나온다. N <= 100강의에서도 13:29 에서 이해가 잘 되지 않습니다. 지금은, 소수인 숫자들에 대해서 누적되어 총합이 만들어지기 때문에 특정 숫자만 살아남는다고 이해했습니다.그런데 예시의 output에서 왜 176이라고 답이 나오나요?질문이 좀 길어졌는데, 정리하면 이렇습니다.(질문에 대한 답변 외에도 추가적인 코멘트 주실 부분이 있다면 감사히 받겠습니다.)Q1. 176의 의미가 정확히 무엇인가요? 176가지인가요?Q2. return check(sum); 의 결과는 1 또는 0인데 cout << go(0,0) << "\n"이 176이 되는 작동 원리가 뭔가요? return된 값을 들고 있는 go()가 다른 go()에 반환할 때 누적되어서 go(0,0)까지 쌓이는건가요?Q3. go()함수에서 return go(idx+1, sum + v[idx]) + go(idx+1, sum)과 같이 idx위치의 숫자를 더한 것과 더하지 않은 go()함수끼리 더하는 논리적 근거는 무엇인가요? 즉, 왜 더해야 했는지. 왜 return이라는 키워드를 사용해야 했는지 궁금합니다.Q4. 강의 영상을 보고나서 특정 숫자에 대해 포함한 경우, 포함하지 않는 경우를 활용하여 해결해야 한다고 표면적인 이해만 완료한 상태입니다. 하지만, 문제 해결을 위한 설계 부분에서 이해가 부족한 것 같습니다. 문제 해결을 위한 설계 부분에 대해서 좀 더 깊은 설명을 부탁드려도 될까요? 재귀함수 진짜 때려 잡고 싶습니다..
-
해결됨코딩테스트 [ ALL IN ONE ]
대기업 합격 수준
안녕하세요, 전 노씨님의 모든 커리큘럼을 구매해서 공부하고 있습니다. 특히 기술면접!!에 많은 도움을 받고 그때부턴 선생님을 믿고 다 지르고/지를예정인데요.다른건 준비를 하고 있거나, 어느정도 해야 통과하겠구나 감이 있는 상태라서 괜찮은데네카라기준 [포트폴리오]는 어느정도로 준비를 해야하는지 감이 잘 오지 않습니다.혹시 선생님께서는 포트폴리오를 어떻게 준비하셨는지, 기술이나 포폴 갯수가 중요하지 않다는 것까진 알고 있지만 그럼 어느 정도의 수준(?)까지 생각해서 구현해야하는지 알고 싶습니다. + 면접 수준ps. 어디에 질문을 해야할지 몰라서 최근 수강하고 있는 강의에 글 남기게 되었습니다. 코테도 열심히 준비해 보겠습니다. 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
split함수 질문
이거 그냥 눈감고 쓸수있을정도로 외워야하나요?? 개념은 이해되는데 흐음
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-c 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.강의해주신 코드 보면 19번 라인에 int &ret = d[y][x];를 하셨는데 왜 int ret이 아닌 주소연산자를 사용하신건가요??제가 기초가 부족해서 그런지 코드 흐름이랑 알고리즘은 이해가 다 되는데 저런 세세한게 가끔씩 이해가 잘 안되네요...
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-D 반례 질문입니다.
안녕하세요 큰돌님, 3-D문제를 최단거리를 구하고 계산하는 방식 말고 1분동안 지훈 이동후, 불이동 이렇게벽 끝쪽에 갈때까지 반복문을 돌리고 반복문이 끝나면걸린시간을 출력하게 했습니다.만약, 반복문이 끝났음에도 지훈이가 벽끝 쪽으로 가지 못한다면 IMPOSSIBLE"을 출력하도록 했습니다.하지만, 2%에서 틀립니다. 반례가 무엇인지 궁금합니다...https://www.acmicpc.net/source/61254593
-
미해결코딩테스트 [ ALL IN ONE ]
LIFO 2번째 문제의 시간복잡도
좋은 강의 감사합니다. LIFO 2번째 문제는 for문 안에 while문이 들어가 있기 때문에 시간복잡도가 O(n^2)인 것 같다는 생각이 드는데요. 전체 시간복잡도가 왜 O(n)인지 설명을 부탁드립니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
return 0;는꼭 써야하나요?
함수 종료시킨다는건 알겠는데딱히 종료안시켜도 문제없는 로직같은경우엔 안써도 되나요? 아니면 메인에선 무조건 써주는게 맞나요?
-
해결됨자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
섹션 3, 숫자만 추출 문제(정답 확인 부탁 드립니다.)
안녕하세요 선생님 !섹션 3번 - 숫자만 추출 문제를 이렇게 풀어도 괜찮을지 확인 한번 부탁 드리겠습니다.그리고 혹시 이런 문제들의 경우 정규식 보다는 이렇게 탐색하고 푸는게 더 좋은 풀이 방식인건가요??<html> <head> <meta charset="UTF-8"> <title>출력결과</title> </head> <body> <script> function solution(str){ let answer = ""; for(const a of str){ if(!isNaN(a)){ if(answer[0] !== undefined) answer += a; else if(a > 0) answer += a; } } return answer; } let str="g0en2T0s8eSoft"; console.log(solution(str)); </script> </body> </html>
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
왜 그리디를 디피보다 앞선 주차에 넣으신지 궁금합니다
제목이 내용입니다
-
미해결자바 코딩테스트 - it 대기업 유제
[3.자료구조 활용 - 5번 cpu스케쥴링] 입력예제 1번 설명 확인
안녕하세요. 김태원 강사님![질문]입력예제 설명에 오타가 있는 것 같아서 확인 차 문의드립니다.[문제]3.자료구조 활용 챕터에 5번 cpu스케쥴링문제입력예제 1번 설명 :1초에 1번 작업을 실행해서 3초에 끝냅니다.3초에 3번 작업을 실행해서 4초에 끝냅니다.4초에 2번 작업을 실행해서 6초에 끝냅니다.-> (확인필요) 4초에 0번 작업을 실행해서 7초에 끝냅니다.6초에 0번 작업을 실행해서 9초에 끝냅니다.-> (확인필요) 8초에 2번 작업을 실행해서 10초에 끝냅니다. [요청]입력예제 1번 설명에 '(확인필요)표시한 부분의 설명'이 맞는 지 답변 부탁드립니당! ps. 코딩테스트 준비가 막막했는데 강사님의 좋은 강의 덕분에 준비할 수 있게 되어서 너무 감사합니다 :)
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S 맞왜틀 질문입니다.
http://boj.kr/2a352c064de74fceac1f3b23cfdb40c347번째줄~52번째 줄까지 제가짠 로직인데벡터에(자식수, 노드번호)를 넣고max값과 같은 노드번호(second)들만 출력하도록 하였는데틀렷습니다 가 뜹니다. 도와주세요. 저부분만 강사님 로직으로 교체했을때는 통과되는데 뭐가 틀렷는지 모르겠습니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
왜 int를 안쓰고 전부 longlong으로 하신지 궁금합니다
헷갈리니까 그렇게 하는건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3#1 if(n%2==)return 0 하고 다음에 i=2로 같은 작업을 반복할필요 없지않나요
for(int i=3으로 해도 되는데 그냥 i=2로 쓰신건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
각 주차별 문제의 시간복잡도
각 주차별 문제들의 시간 복잡도는 안알려주시는 건가요?제가 계산한 게 맞는지 확인하고 싶어서 그렇습니다!
-
해결됨자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
섹션 2, 1,2차원 탐색(봉우리)
선생님 안녕하세요 문제를 푸는 과정에서 궁금한 점이 생겨서 질문 드립니다.먼저 저는 문제에서 힌트를 얻어 기존의 배열의 테두리에 0을 추가해주고 풀었습니다.근데 arr.push / arr.unshift를 통하여 배열 상하단에 [0,0,0,0,0]으로 된 배열을 추가하고 난 뒤배열 안의 arr[i]의 배열에도 push, shift를 통해 0을 추가해줬습니다. 이 과정에서 동일하게 for문을 진행했는데추가해준 첫번째, 마지막 배열의 길만 9개가 되는데 왜 그런지 이유를 잘 모르겠습니다.다른 배열들은 push, unshift가 한번씩만 된 거 같은데, 추가해준 배열만 2번씩 된 거 같습니다. 이유가 무엇인지 알 수 있을까요?? 제가 잘못한 부분이 있는걸까요??<html> <head> <meta charset="UTF-8"> <title>출력결과</title> </head> <body> <script> function solution(arr){ let answer = 0; let newArr = new Array(arr.length).fill(0); arr.push(newArr); arr.unshift(newArr); for(let i=0;i<arr.length;i++){ arr[i].push(0); arr[i].unshift(0); } for(let i=0;i<arr.length;i++){ for(let j=0;j<arr[i].length;j++){ let res = arr[i][j]; if(i !== 0 && i !== arr.length - 1 && j !== 0 && j !== arr[i].length - 1){ if(res > arr[i+1][j] && res > arr[i-1][j] && res > arr[i][j+1] && res > arr[i][j-1]){ answer += 1; } } } } console.log(arr) return answer; } let arr = [ [5,3,7,2,3], [3,7,1,6,1], [7,2,5,3,4], [4,3,6,4,1], [8,7,3,5,2] ] console.log(solution(arr)) </script> </body> </html>
-
해결됨Do it! 알고리즘 코딩테스트 with JAVA
집합 표현하기(백준 1717) union 함수 질문
안녕하세요 강의 잘 보고 있습니다.강의를 보다가 질문이 생겨 질문드립니다.강의 영상에서 union 함수에서 a,b의 크기와 상관없이 a와 b가 다르다면 parent[b] = a; 라고하시는데이렇게 해도 되는 이유가 어차피 나중에 find 함수의 재귀함수부분 return parent[a] = find(parent[a]); 에서 경로 압축이 되기 때문에 크기 상관없이 parent[b] = a; 선언 해주신 건가요?
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 리뷰 부탁드립니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. const input = `15 BACBACCACCBDEDE`.split('\n'); let arr = input[1].split(''); function solution(arr){ let studentMap = new Map(); let winner = ''; let maxNum = 0; for(let i = 0; i < arr.length; i++){ studentMap.set(arr[i], studentMap.get(arr[i]) +1 || 1); } let studentArr = [...studentMap] studentArr.forEach(arr => { if(arr[1] > maxNum){ maxNum = arr[1]; winner = arr[0]; } }) return winner; } console.log(solution(arr));