묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-B 보물섬 코드질문
안녕하세요 선생님 나름 코드를 짜고 테스트케이스를 통과하여 기쁜 마음으로 채점을 해봤는데 "틀렸습니다!" 라고 나오는데 혹시 왜 틀렸는지 코드 한 번 봐주실 수 있나요??http://boj.kr/faef0eba568e47b3b9ff7e9aaf361e69(링킹 피드백 적용!!)
-
미해결자바 코딩테스트 - it 대기업 유제
혹시 채점 프로그램 또는 채점 사이트를 추후에 지원할 계획이 있으신지 궁금합니다
안녕하세요 선생님. 항상 좋은 강의 감사드립니다! 혹시 추후에라도 채점 프로그램 또는 채점 사이트를 지원하실 계획이 있으신지 여쭙고 싶습니다.아무래도 테스트케이스가 제한적이다 보니까 제가 짠 코드에 대한 확신이 부족해서 문의드립니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요, 1주차 시간복잡도 강의자료 문의 드립니다.
안녕하세요? 강의 자료 문의 드립니다.0주차 강의는 알고리즘 교안.pdf 통해서 참고 잘 했는데요,1주차 와서 시간 복잡도도 자료를 활용하시는 것 같은데 관련 자료가 없는 것 같아 문의 드립니다.따로 제공을 하실까요? 아니면 알고리즘교안.pdf만 제공하시는 걸까요?
-
해결됨코딩테스트 [ ALL IN ONE ]
Notion 공유 요청드렸지만 응답을 받지 못하였습니다.
안녕하세요! 이번에 수강을 시작하게 된 학생입니다. 다름이 아니라, 노션 공유 요청을 저번주 금요일에 드렸는데 아직 응답을 받지 못해서요... ㅜㅜㅜ 얼른 공유 노트와 함께 강의를 듣고 싶습니다!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
안녕하세요 혹시 이것도 답이될까요?
import sys n,k=list(map(int,input().split())) li=list(map(int,input().split())) li.sort(reverse=True) # li=list(set(li)) answer = 0 tmp = 1 for i in range(len(li)-2): for j in range(i+1,len(li)-1): for l in range(j+1,len(li)): if k != tmp: tmp+=1 else: answer += li[i] + li[j] + li[l] print(answer) sys.exit()한번에 list(set)하는식으로 해봤는데 이런식으로 코드 작성해도될까요?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
최대점수 구하기(DFS) 질문 드립니다.
안녕하세요, 해당 문제를 풀다가 질문 사항이 있어서 질문드립니다.import sys sys.stdin = open("C:\\Study\\algorithm\\input.txt", "r") def DFS(L, sum, time): global res if res[0] <= time <= m: if res[1] < sum: res[0] = time res[1] = sum for i in range(1, n+1): if time > m: break if ch[i] == 0: ch[i] = 1 DFS(L+1, sum+ls[i-1][0], time+ls[i-1][1]) ch[i] = 0 if __name__ == "__main__": n, m = map(int, input().split()) ls = [] ch = [0] * (n+1) res = [0] * 2 for i in range(n): a, b = map(int, input().split()) ls.append([a, b]) DFS(0, 0, 0) print(res[1])위 코드를 돌려보면 테스트 케이스 1,2번은 풀어지나 3번부터 timeOut이 뜨네요 (무한 루프가 도는거 같습니다)이전 문제에서 알려주신 비슷한 방식으로해당 문제를 1~n까지 DFS(n)전체를 탐색해서 최적의 점수를 도출할려고 했는데, 해당 유형의 문제가 나오면 이러한방식으론 해결이 불가능한걸까요?
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
이것도 선택정렬이 맞는건가요?
function solution(arr) { let answer = arr; for (let i = 0; i < arr.length; i++) { for (let j = i + 1; j < arr.length; j++) { if (answer[i] > answer[j]) { let tmp = answer[j]; answer[j] = answer[i]; answer[i] = tmp; } } } return answer; } let arr = [13, 5, 11, 7, 23, 15]; console.log(solution(arr));강의를 한번 다 보고 다시 안보고 푸는 중인데, 이렇게 해도 답은 나오더라구요, 이것도 선택정렬이 맞는건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
알고리즘은 원래 답을 보면서 배우는걸까요?
2주차부터는 이론 강의 들어도 정말 문제에 손을 못 대겠어요... 근데 또 답을 보면 죄책감이 들어서요.. 수능 수학 공부할 때는 최대한 답을 안 보려고 했었거든요 알고리즘은 이렇게 공부 하는 게 맞을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-P 질문 입니다 ㅠㅠ
강사님 안녕하세요,5-P 문제를 먼저 풀고 예제에서는 모두 통과 한 것을 확인하고 제출해보니 94% 에서 틀렸다고 항상 나오네요...저는 bitmask 활용하여 문제를 풀긴했습니다만무엇이 틀렸는지 감이 오지를 않습니다.같은 문제에 대한 다른 질문 글을 보니 90% 대에 틀렸다고 나오는 것이 있긴했는데제 경우도 같은 경우일까요?일부 주석 포함 제 코드는 다음과 같습니다.http://boj.kr/8aa660e3d6fb407e81d7902b94b2d5a5
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1068 트리 질문입니다.
저는 선생님과 다르게 bfs로 구현하였습니다.https://www.acmicpc.net/source/58165746제 트리 코드인데 어느 예외 사항을 놓쳤는지 모르겠습니다ㅠㅠ. 코드에 대한 설명은 주석으로 처리하여 남겼습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
8-N 질문입니다.
안녕하세요 강사님INF 값을 9876543210으로 지정한 이유가 있나요?아니면 그냥 적당히 큰 값으로 한걸까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
비트마스킹 개념 2-3 궁금합니다!
안녕하세요 강사님!오른쪽 쉬프트 연산자 >>를 설명하실때,11 >> 2라면 0011이 오른쪽으로 두칸 가서 0000이 되는거 아닌가요? 어떻게 2가 나오는지 궁금합니다!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4659 질문드려요
안녕하세요, 정답 코드를 학습한 후에 복습을 하고 있는 도중, 함수로 조건을 정리하여 만들어보았는데 틀렸다고 나옵니다. 혹시 어떤 부분이 틀렸는지 알 수 있을까요?http://boj.kr/b27ed7900e964339b962f26ff685918f
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-G 배열 크기 질문
안녕하세요 큰돌님!5-G문제에서 배열의 소수를 만드는 크기를 4000004로하면 틀렸습니다가나오고 4000001로하면 맞는데이유를 잘 모르겠습니다.혹시 어떤이유로 틀리는 걸까요?소수를 확인하는 것은 4000001이던 4000004이던 상관없지 않나요? http://boj.kr/b9d1006666d949a09380a1dcd8f6b833
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-A 2178) tie(y,x)=q.front(); q,pop(); ??
안녕하세요!아직 실력이 부족하여 강사님의 코드를 하나하나 이해하며 공부하고 있는데 2-A 2178 DFS 문의드립니다.tie(y,x) = q.front(); , q.pop(); 코드가 이해되지 않습니다...int main(){ scanf("%d %d", &n, &m); for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++){ scanf("%1d", &a[i][j]); } } queue<pair<int, int>> q; //먼저 큐를 정의하고 visited[0][0] = 1; // 시작점 0,0 방문하여 q.push({0, 0}); // 큐에 0,0 값을 넣어줍니다. while(q.size()){ //큐에 값이 있을 때까지 반복 tie(y, x) = q.front(); q.pop(); // y= q.first, x=q.second 뜻으로 tie를 써주고// pop...가장 앞에 요소를 제거..? for(int i = 0; i < 4; i++){ //현재 위치에서 상하좌우에 1이 있는지 탐색 int ny = y + dy[i]; int nx = x + dx[i]; if(ny < 0 || ny >= n || nx < 0 || nx >= m || a[ny][nx] == 0) continue; if(visited[ny][nx]) continue; visited[ny][nx] = visited[y][x] + 1; q.push({ny, nx}); } } printf("%d", visited[n - 1][m - 1]); return 0; 그럼 답변 부탁드립니다..
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
바둑이 승차 성능 향상 질문
안녕하세요. 바둑이 승차(DFS) 질문입니다.해당코드에서 성능을 더 향상시킬수있지 않을까 해서 질문드립니다.강사님이 작성하신 코드에서 if(L==N) 전에 if(sum==C)가 나오면 더이상 코드 진행을 하지 않아도 되는거 아닌가요? 그 때 flag값을 하나 추가해서 모든 재귀를 return 시키는 방법을 쓰면 더 좋을것같은데 제 생각이 맞나 궁금하네요.답변 부탁드리겠습니다.감사합니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
Array의 요소 수정하기
안녕하세요 알고리즘 교안 112쪽에 Array의 요소 수정하기 예시 코드에서 궁금증이 생겨 질문 남깁니다.go함수와 go 2함수, go 3함수는 매개변수로 각각 a array자체, a의 크기, a의 포인터를 매개변수로 받는다고 되어있는데 main함수에서는 모두 array a를 매개변수로 넘겨서 활용하고 있는데 이게 왜 가능한지 궁금합니다.
-
해결됨코딩테스트 [ ALL IN ONE ]
root == p 를 비교하는법?
강사님의 풀이방법을 보면class Solution(object): def lowestCommonAncestor(self, root, p, q): left = self.lowestCommonAncestor(root.left, p, q) right = self.lowestCommonAncestor(root.right, p, q) if root == p or root == q: return root elif left and right: return root return left or right여기서 root.value == p가 아니라 어떻게 root == p로 비교할 수 있는 지 궁금합니다.아래는 제가 푼 방식입니다.class Node: def __init__(self, value=0, left=None, right = None): self.value=value self.left= left self.right = right def LCA(root,p,q): if root is None: return None left = LCA(root.left,p,q) right = LCA(root.right,p,q) if root.value == p or root.value ==q: return root elif left and right: return root return left or right root=[3,5,1,6,2,0,8,None,None,7,4] root = Node(value = 3) root.left = Node(value = 5) root.right = Node(value = 1) root.left.left = Node(value = 6) root.left.right = Node(value = 2) root.right.left = Node(value = 0) root.right.right = Node(value = 8) root.left.right.left = Node(value = 7) root.left.right.right = Node(value = 4) root= LCA(root,5,6) print(root.value) if root.value == p or root.value ==q: return root저는 여기서 root == p 를 하게 되면 아래 오류가 발생합니다.AttributeError: 'NoneType' object has no attribute 'value' 답변주시면 정말 감사하겠습니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2852번 문제 이해가 안돼요.
안녕하세요 선생님.NBA농구 문제를 푸는데 문제 이해를 잘못 한 것 같아요.1팀, 2팀이 각각 이기고 있는 시간을 출력하는 문제인데요. 아래 예제로 예를 들면, 1팀이 이기고 있는 시간은 01:10 ~ 45:30 으로 44분20초가 되어야 하는 것 같은데, 왜 45:30인지 모르겠어요.예제 입력 2번에서는 01:10 ~ 21:10으로 1팀이 20분 이기고 있는 것이 맞는데 예제 3번에서는 왜 다른지 이해가 안돼요.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-F r선언
#include<bits/stdc++.h> using namespace std; int n, m, j, l, r, temp, ret; int main(){ cin >> n >> m >> j; l = 1, r = l + m - 1; for(int i = 0; i < j; i++){ cin >> temp; if(l <= temp && temp <= r) continue; else if(temp < l){ ret += (l - temp); l = temp; }else{ ret += (temp - r); l += (temp - r); } } cout << ret << '\n'; } #include<bits/stdc++.h> using namespace std; int n, m, j, l, r, temp, ret; int main(){ cin >> n >> m >> j; l = 1; for(int i = 0; i < j; i++){ r = l + m - 1; cin >> temp; if(l <= temp && temp <= r) continue; else if(temp < l){ ret += (l - temp); l = temp; }else{ ret += (temp - r); l += (temp - r); } } cout << ret << '\n'; } 안녕하세요 선생님 질문이 있어 이렇게 글을 남깁니다. r을 반복문 안에다 선언하면 맞고 밖에다 선언하면 틀렸다고 나오는데 도저히 이유를 모르겠습니다.