묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
왜 틀렸는지 모르겠습니다.
http://boj.kr/13cd857dcaae4b858119dc6057a36655 DFS를 이용해서 풀었습니다. 전체적인 로직은 큰돌님이 보여주신 코드랑 다를 바 없는 것 같은데 cnt (큰돌님 코드에서는 ret) 값이 고정 1로 나옵니다.아무리 봐도 어디가 잘못된건지 모르겠습니다..
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-N 코드 질문있습니다
안녕하십니까 큰돌님강의 보기 전에 문제를 풀어봤는데 틀렸다고 나와서 질문드립니다. 최대 범위인 20억 * 20억일 때 long long 범위가 넘는데 pow 반환값을 long long 에 저장해서 틀린게 맞을까요 ?? 그리고 pow함수의 시간복잡도는 어떻게 되는지도 궁금합니다http://boj.kr/c90ff8da35d3490b859f8ee922c59bf9
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-M 반례를 잘 모르겠습니다
안녕하십니까 큰돌님좋은 로직이 아닌 것은 알지만 강의 듣기 전에 코드 작성했었는데 틀렸다고 해서 어떤 반례가 있는 것일까요 ?? http://boj.kr/d9d056ce29f948bca638664de0101191
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-I 개념 질문있습니다
안녕하십니까 큰돌님개념에서 Map은 map<string, int> mp; 이런 식으로 사용하는 것을 알겠는데 Arr 은 어떻게 String - int하는 건가요 ?? 예시 코드라도 보여주실 수 있을까요 ?? 말로 들었을 때 이해가 잘 안 가서 질문드렸습니다 ..!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
C++ 초기설정 에러 문의
큰돌님 안녕하세요!gcc 설치 후 vscode에 설정하는 중 일부 에러가 발생하여 질문 드립니다.현재 homebrew를 통해 gcc 설치 후 해당경로로 헤더파일을 만들어놓은 상태입니다.그 후, vscode a.cpp 파일의 터미널에 g++ -std=c++14 -Wall a.cpp -o test.out 를 입력하였을 때, 에러가 발생합니다.어떻게 수정해야할까요...
-
미해결코딩테스트 실전 모의고사(with C++) : 대기업 대비
BFS 참고하세요
#include <iostream> #include <vector> #include <queue> using namespace std; int n, m, k; int dx[4] = { 1, -1, 0, 0 }; int dy[4] = { 0, 0, 1, -1 }; int main() { cin >> n >> m >> k; vector<vector<int>> Map(n + 1, vector<int>(m + 1, 0)); vector<vector<bool>> visited(n + 1, vector<bool>(m + 1, false)); vector<pair<int, int>> flooded; for (int i = 0; i < k; i++) { int x, y; cin >> x >> y; Map[x][y] = 1; flooded.push_back({ x, y }); } int max_size = 0; for (auto& start : flooded) { if (visited[start.first][start.second]) continue; int size = 0; queue<pair<int, int>> Q; Q.push(start); visited[start.first][start.second] = true; while (!Q.empty()) { size++; int x = Q.front().first; int y = Q.front().second; Q.pop(); for (int i = 0; i < 4; i++) { int nx = x + dx[i]; int ny = y + dy[i]; if (nx >= 1 && nx <= n && ny >= 1 && ny <= m && Map[nx][ny] == 1 && !visited[nx][ny]) { Q.push({ nx, ny }); visited[nx][ny] = true; } } } max_size = max(max_size, size); } cout << max_size << endl; return 0; } DFS가 아닌 BFS 사용해도 문제는 풀립니다.공부중이라 어느게 더 효율적인지는 모르겠습니다만, 혹시 BFS로 접근하실 분들 참고하라고 올려봅니다~
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
알고리즘 교안 사용법
cpp에 대한 지식이 부족한데, 알고리즘 교안을 미리 한번 다 보고 나서 시작해야하는건가요??아니면 그냥 강의 쭉 따라 가면 되는걸까요강의 목차에는 Vector나 다른 기본 개념들에 대한 설명이 없는것 같아 문의 드립니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[1-H]시간 초과 관련해서 질문드립니다
http://boj.kr/ab659fec129e45c7b35407ed7e322f06 안녕하세요 선생님문제 제출 결과가 시간초과로 나왔는데 ,vector의 사용이 문제인지 이중 for문이 문제인지 아니면 다른 어떤 게 문제인지 궁금합니다 그리고 결과가 시간 초과라고 나왔을 경우 어떻게 대처하면 좋을까요? 예를 들어서 다른 자료형을 사용한다던지 아니면 로직을 바꾼다던지.. 제가 왕초보라 어떻게 대처해야 할지 모르겠습니다. ㅜㅜ 저는 위 코드를 다음과 같이 짰습니다.입력받은 온도 값을 벡터에 저장.총 n-k+1번 동안 반복해서 연속된 온도k개의 합을 구해 다른 벡터에 저장.가장 큰 값 출력. 항상 감사합니다!!
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
같은문자 제거하기
function solution(s){let answer="";for (const sElement of s) {if(answer.indexOf(sElement) === -1) answer += sElement}return answer;}console.log(solution("ksekkset")); 이렇게 짯는데 어떤가요? 피드백 부탁드립니다 ㅠ
-
미해결자바 코딩테스트 - it 대기업 유제
구현 - 과일 가져가기 문제
public int getMinIndex(int[] fruit) { int min = getMin(fruit); for(int i = 0; i < 3; i++) { if(fruit[i] == min) return i; } return 0; }아니라public int getMinIndex(int[] fruit) { int min = getMin(fruit); int i; for(int i = 0; i < 3; i++) { if(fruit[i] == min) return i; } return i; }해야 되는거 아닌가요?첫번째 코드처럼 하면 무조건 최솟값인 과일의 인덱스로 0(사과)가 반환되는거 아닌가요??첫번째 코드가 맞는 이유는 처음 등장하는 return이 메소드를 종료시키므로 이후의 구문은 실행되지 않기 때문인가요?!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 프로그램 질문
안녕하세요 ~ 강의 잘 듣고 있는 수강생입니다.강의용 채점 프로그램이 혹시 in out 외에 추가적인 테스트 케이스가 있는 걸까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1주차 공간 복잡도 영상이 안나옵니다.
동영상 준비중 입니다. 라고 나오면서 동영상이 안 나오는데 확인 부탁 드려도 될까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[6-F] 질문입니다
안녕하세요 선생님, 최댓값 초기화에 관한 질문을 드립니다. 다른 문제에서는 long long의 큰 값 초기화를 1e18로 했었는데 이번 문제에서는 1e18 + 4인 이유가 궁금합니다. 더해주는 숫자의 값은 크게 중요하진 않고 +1 ~ +4 모두 값을 보정해준다는 면에서 같은 의미를 가지는 것인가요? 단순히 1e18로 초기화할 경우 미세하게 숫자가 부족하여 틀리는 경우가 있으므로 작은 값을 필수적으로 더해주어야 한다고 이해해도 괜찮을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[1-G] 런타임 에러 관해서 질문드립니다
http://boj.kr/320d687034ef4bfa9725d9ddaa53fe63안녕하세요 선생님 강의 잘 보고 있습니다 감사합니다.코드를 제출했는데 런타임에러 out_of_range 라고 뜨는데 왜 그런지 잘 모르겠어요. 한번 봐주시면 감사하겠습니다!!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-H 코드 질문있습니다
안녕하십니까 큰돌님강의 보기 전에 prefix sum 이 기억이 안나서 혼자 풀어봤는데 어디에서 틀린 건지 모르겠습니다 ㅜㅠhttp://boj.kr/b45a32d5c6db4cda94b0a3177e17291a
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제도 이해안가고 풀이도 이해안가요..
문제도 이해안가고 풀이도 이해안가면 포기하는게 맞을까요? ㅜㅜ그냥 어거지라도 보고있는데 이해가안가요,,,첫번재영화 1666 두번째 2666이면10번째는 10666 이런식 아닌가요?? 풀이를 봐도 문제가 답을 뭘 원하는건지도 모르겠어요,,너무답답해요커뮤니티 보니까 저만 이런것 같고,,
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 문제 해결부탁드립니다..
채점하려고 AA.py파일을 만들어 k의 약수문제에 붙여넣고 judge를 누르니 처리되지 않은 예외: System.AggregateException: 하나 이상의 오류가 발생했습니다. ---> System.IO.IOException: 파이프가 끝났습니다. 위치: System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 위치: System.IO.__Error.WinIOError() 위치: System.IO.FileStream.FlushOSBuffer() 위치: System.IO.FileStream.<>c.<FlushAsync>b__117_0(Object state) 위치: System.Threading.Tasks.Task.InnerInvoke() 위치: System.Threading.Tasks.Task.Execute()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<FlushAsyncInternal>d__68.MoveNext()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<WriteAsyncInternal>d__55.MoveNext() --- 내부 예외 스택 추적의 끝 --- 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout) 위치: Judge.Program.Main(String[] args) 다음과 같은 오류가 발생하는데 어떻게 해야할까요
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
노래도 내주세요...
중독성 미쳤습니다 선생님ㅋㅋ...1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ 1 바이트 짜리~ (강의 재밌게 듣고 있습니다 ㅋㅋ! 오늘 질문은 여기까지!)
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제는 맞았지만 의문이 생겨 질문 남깁니다!
http://boj.kr/d27f965013354f43a4356d5d2d5baea9해당 문제를 왜 틀린지 몰라서 헤매다가 배열을 초기화해주니 정답처리 되었습니다. 그런데 배열 초기화를 하지 않았다고 하더라도 출력값은 어짜피 동일한데 왜 이전에는 오답처리가 되었는지 이해가 안되어서 질문 드립니다. 가비지 값때문에 그 값만큼 문자가 출력되어서 틀렸다면 이해가 되는데 출력값은 이전과 동일하게 나옵니다. 이전에 오답이었던 이유가 무엇인가요? 이전 코드는 해당 소스코드에서 a배열을 초기화하지 않았습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[7-N] 질문입니다
안녕하세요 선생님, 강의를 듣던 중 궁금한 점이 생겨 질문을 드립니다. https://www.acmicpc.net/source/share/ac40156090a44a3883d00e1da2250094답지의 코드에서 ret == INF일 경우 -1을 출력하고 있는데, 유일하게 ret 갱신이 이루어지는 부분은 ret = min(cnt, ret);이기 때문에 ret값이 INF가 되려면 cnt가 INF이거나 그 이상이 되어야 할 것으로 보입니다. 백트래킹을 위해 추가된 코드 if (cnt >= ret) return; 이 있기 때문에 x, y 끝지점에 도달하기 전에 cnt >= ret일 경우 끝지점에서만 일어나는 ret 갱신이 일어나지 않기 때문에 ret는 INF일 수 있겠구나 생각했지만 그럴 경우 cnt >= ret이 되기 위해 cnt >= INF인 경우가 생기게 됩니다.cnt >= ret이 아닌 이상 언젠가는 y == len에 도달하여 ret 갱신이 이루어질 것이고, 최초 dfs 호출 시 cnt를 0으로 주었기 때문에 cnt >= INF가 되기 위해선 실제로 cnt가 한 칸씩 증가할 수밖에 없습니다. 재귀를 통해 cnt를 하나씩 증가시킬 경우 INF에 도달하기까지 매우 많은 시간이 걸릴 텐데 어떻게 시간 초과가 나지 않는 것인지 궁금합니다. 시간 복잡도를 계산해봤을 때 재귀함수의 시간 복잡도는 O(갈래^깊이), 최악의 경우 for문 5번에서 재귀함수가 모두 호출 되므로 갈래 = 5, cnt를 1씩 증가시켜 INF에 도달하려면 깊이는 INF이므로 O(5^INF)라고 생각했는데 시간복잡도를 잘못 계산한 것일지 어떻게 INF일 때 시간 초과가 나지 않는 것인지 질문을 드립니다.