안녕하세요 강사님 나무 재테크의 문제에서 sort의 위치에 따라 시간초과가 나서 질문드립니다. 저는 나무가 번식할때마다 sort를 해주었는데요. 나무가 번식할때 8번 sort를 하게된다고 이해했습니다. 시간초과 코드입니다. http://boj.kr/747f87a580cb4baa93829723a74c5e0c 하지만 이렇게 하면 시간초과가 나서 강사님의 코드처럼 나무가 영양분을 먹을때 sort를 하니 통과하였습니다. 나무가 영양분을 먹을때 sort를 하면 나무가 번식하지 않아도 계속 sort를 하게되는데 왜 번식할떄만 sort하는것보다 시간이 적게 걸리는 걸까요?? 성공 코드입니다 http://boj.kr/36fb687d7cb644169aa39f251d50051e
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. function solution(str) { let answer = "YES"; let left = 0; let right = 0; for (let x of str) { if (x === "(") left++; if (x === ")") right++; if (left < right) answer = "NO"; } if (left !== right) answer = "NO"; return answer; } 스택을 사용해서 풀지는 않았지만 위와 같은 코드도 괜찮을까요??
안녕하세요 강사님! 풀이 방법 중 _num의 최댓값을 구하기 위해 ret의 최솟값을 -987654321(9자리)로 선언 했습니다. 저는 만약에 string s가 1-9*9*9*9*9*9*9*9*9로 나온다면 ret의 최솟값을 선언하기 위해 저는 어림짐작으로 (1-9) 9^8 정도의 출력값이 나오겠다라 생각했고 이를 직관적으로 계산하기 위해 -8 * 9^8을 -8 * 10^8로 바꿔 셈했습니다. 그 결과 -800000000(9자리) 였고, 이보다 더 작은 수가 나올 수도 있겠다는 생각을 했었습니다. (결과적으로 -987654321보다 작은 수가 나올 수도 있겠다란 생각으로 -987654321을 최솟값으로 둬도 괜찮나?란 생각을 문제풀이 당시 했었습니다) 더불어, 문제에서 정답은 2^31부터 -2^31의 미만이라는 값이 주어진다고 했고 저는 ret의 최솟값을 문제에서 설정한 범위 밖에서 설정하려고 했지만 -2^31을 보고 이 보다 작은 수를 어떻게 ret으로 선언할지에 어려움을 겪었고, -2^31이 -987654321보다 작다보니 -987654321로 최솟값을 선언하지 못하였습니다. 그래서, -987654321란 최솟값이 다른 문제에도 적용되는 통용되는 최솟값인지 그리고 저의 생각 중 어떤 곳에 오류가 있었는지 궁금하여 질문드립니다!
먼저, 좋은 강의 감사드립니다. 선생님의 "자바(Java) 알고리즘 문제 풀이 입문" 강의를 수강 하며 실력이 많이 향상되었음을 느낍니다. 첫 번째 질문: "자바(Java) 알고리즘 문제 풀이 입문" 강의의 "DFS, BFS 활용" 섹션을 다 듣고 나서 곧바로 현재 이 강의의 DFS, BFS 부분을 들어도 괜찮은지 궁금합니다. 강의 순서대로 따라가며 듣는 게 좋은지 , 굳이 순서대로 따라가며 안 들어도 되는지 궁금합니다. 두 번째 질문: 물론 각 문제마다 난이도의 편차는 있겠지만, 평균적으로 현재 강좌의 DFS, BFS 부분 문제 난이도는 백준 혹은 프로그래머스로 굳이 따지자면 레벨이 어떻게 되는지 궁금합니다. 감사합니다.
저는 n!에서 10이 나오려면 무조건 5가 몇갠지만 체크하면 된다고 생각했습니다. 왜냐하면 우선 5!일 때 5의 갯수가 1개 있기 때문에 10이 나오기 때문입니다. 이미 5!일 때부터 5의 갯수는 1개, 2의 갯수는 3개니까요. 5의 제곱인 25!이라고 해도 5의 갯수는 겨우 5개인 반면 2의 갯수는 2~8까지만 봐도 이미 5개를 넘겼으니까요. 그래서 저는 그냥 5의 갯수만 세서 5의 갯수가 뒤에 붙는 0의 숫자라고 풀었습니다만 정말 만에 하나 예외가 있을 수도 있으니까요... 예외가 있는지 궁금합니다!
안녕하세요 선생님 좋은 강의 열심히 듣고 있습니다! 5주차 개념강의를 듣다가 선긋기 문제의 선생님 코드를 보고 의문이 생겨서 질문 들립니다. 선생님 코드에서 else if(L[i].first <= r && L[i].second >= r){ r = L[i].second; } 이 부분인데요. 여기서 r을 최신화하기 전에 현재의 r과 크기를 비교해야되지 않을까요? 예를 들어 현재의 l = 1, r = 5일때 (2,4)가 들어온다면 r을 5로 유지해야 할 것 같습니다 질문읽어주셔서 감사합니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 선생님 안녕하세요 정렬을 하면 nlogn이라는 시간 복잡도가 나오고 두수를 더해가는 과정이 n이라는 복잡도가 나오는데 전 nlogn + n 의 복잡도가 나오는줄 알았는데 왜 더큰 nlogn이 나온건가요?
강사님 안녕하세요, 6-C 이분 탐색을 할때, 최소 인출 금액 K 를 구할 때 문제 해설 코드에서는 ret = min(ret,mid) 이 아닌 ret = mid 로 작성이 되어있는데요 그 이유가 check_size(mid) 가 만족된 경우에 다음 mid 값은 현재 mid 값보다 항상 작은 값으로 갱신되기 때문인 것으로 이해하면 되는 것이죠? http://boj.kr/11bd65fe1a2740d19a170bf296e4ade1 while (low <= high) { mid = (low + high) / 2; if (check_size(mid)) { high = mid - 1; ret = min(ret, mid); // ret = mid; } else { low = mid + 1; } }
안녕하세요 큰돌님. 2-A 문제 푸는중에 런타임 에러(Double free)가 발생하였습니다. 우선 문제를 풀긴했는데, 오류 발생한 코드와 정답을 맞춘 코드의 차이가 아래의 2차원 포인트를 어디에 선언했냐에 따라 달라졌습니다. int** adj = new int* [N]; int** visited = new int* [N]; 질문1) 2차원 동적배열(포인터) 지역선언 혹은 전역선언에 따라 해제(delete)의 영향을 받을 수 있는지 궁금합니다. 틀린코드에서 디버깅할때 항상 2차원 포인터 해제에서 문제가 발생하였습니다. delete[] adj; delete[]visited; 질문2(기타질문) 비쥬얼 스튜디오에서 scanf()를 사용할 시, #define CRT SECURE_NO_WARNINGS 구문을 넣어줘야하는데, 실제 시험에서도 해당 구문을 넣어도 문제가 안되는지 궁금합니다. [틀린 코드] http://boj.kr/dcf6622717a34c72be6ec24d2b179a8c [정답 코드] http://boj.kr/55b2a222039740d1a83dec82eb13576e
안녕하세요. 파이썬 및 코딩 테스트 공부를 시작한지 얼마 안 된 학생입니다. 기존에는 주피터 노트북으로 코딩을 작성하며 백준 문제를 풀어보았는데, 강의에서 가르쳐주신 디버깅에 대해서는 배워본 적이 없습니다. 이번 강의(숫자의 합 구하기 코딩)에서 디버깅을 하는 방법을 직접 해보시면서 설명해주셨는데, 해당 코딩을 어떤 프로그램으로 진행했는지, 그 프로그램을 사용하려면 어떻게 해야 하는지 궁금합니다. 또한, 주피터 노트북에서 디버깅을 하기 위해선 어떤 방식으로 해야 하는지 아시는 분이 계신다면 알려주실 수 있을까요? 자세한 강의 감사합니다.
안녕하세요 큰돌님 게임 문제를 풀다 시간초과가 나서 질문드립니다. 해당 문제는 50 * 50 배열에 4방향의 경우의 수를 고려해야하니 4 ^ 50의 시간복잡도가 걸릴텐데 최악의 경우 배열의 값이 전부 1이여야할거라고 생각했습니다. 그런데 이때는 순환하는 경우여서 앞서 계산한 시간복잡도보다 훨씬 일찍종료될거라고 판단하였는데요 제가 시간복잡도 계산을 정확하게 한것일까요? 제 코드에서 시간초과가 발생하는 케이스는 어떤게 있을까요? dp가 너무 어렵네요...ㅠㅜ http://boj.kr/5feacce2689b45ca848b64831f7fe0e4 친절한 답변 항상 너무 감사드립니다!
안녕하세요 선생님 ! 선생님 강의로 이직 준비 하고 있는 예비 이직러입니다~ 일단 강의를 안보고 푼다고 풀었는데 범위 에러가 나서 다시 보는데 어디가 문제인지 모르겠습니다. http://boj.kr/ada69076de594720b60beabcb5bcec79 제가 풀고 선생님 강의 코드를 보니 엄청 간결해서 반성하게 되네요 .. ㅠㅠ 열심히하겠습니다!! 답변주시면 감사하겠습니다.