묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 중급 2편
오탈자가 있는데
별거아닌데문제와 풀이3 - Stackyoubute.com 수업자료에 그대로 있어서요
-
해결됨코딩테스트 [ ALL IN ONE ]
VS Code 사용법
안녕하세요.훌륭한 강의 잘 듣고 있습니다. 코테가 처음이고, VS Code 또한 처음 사용하다보니Break point 찍는 지점, .py 생성 등 모든 것이 익숙치않고 헷갈리네요.코테 연습할 때 VS Code를 효율적으로 사용할 수 있는 방법에 대한 강의는 찍으실 생각 없으실까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-J 질문 있습니다!
안녕하세요 선생님, 사소한 궁금증이 두가지 생겨 질문 드립니다.1.선생님이 전역변수가 유리하다고 말씀해주셨는데 이번에는 지역변수로 map을 선언하셨습니다. 저는 전역변수를 이용해 선언 후 선생님의 while문 맨 아래에서 clear시켜주는 방식을 사용했습니다. 이런 상황에서는 지역변수로 해주는 것이 복잡도 등의 측면에서 더 효율적이라 그렇게 하신건가요? 아니면 그저 취향 차이인가요? 2.이 문제에서는 공백을 두고 들어오는 두 문자열 중 앞의 문자열은 사용하지 않습니다. 이런 상황에서 선생님 풀이처럼 두 문자열에 대해 변수를 모두 선언해서 각각 받을 수 있지만 저는 아래와 같이 한 변수만 설정하여 연속으로 입력받는 방식을 습관처럼 사용하고 있습니다.cin >> tmp >> tmp;이부분 또한 취향차이인지, 더 나은 것이 있는지 궁금합니다.감사합니다.https://www.acmicpc.net/source/share/91fe4435e46b418ba58f13a0844b382e
-
해결됨김영한의 실전 자바 - 중급 2편
굳이 out으로 안하고 해도 되지 않을까 싶어서요
[질문 내용]따로 Shuttle에 out 을 만들어서 T unit에 넣어서 sout으로 입력해 출력하는 것이 아니라public static <T extends BioUnit> void printV1(Shuttle<T> t) { t.showInfo(); } public static void printV2(Shuttle<? extends BioUnit> t) { t.showInfo(); }이렇게 출력해도 동일하지 않을까 싶어 여쭈어봅니다.
-
해결됨김영한의 실전 자바 - 중급 2편
섹션 4. 직접 구현하는 연결 리스트 제네릭 도입
제네릭은 new를 하면 타입 이레이저 때문에 Object가 되어버려서 new를 할 수 없다고 하셨는데,Node<E> newNode = new Node<>(e);이것도 E부분이 Object로 변하니까 new 생성을 못하는 이거는 왜 가능한 건지 이해가 되지 않습니다 ㅠ public class MyLinkedListV3<E> { private Node<E> first; private int size = 0; public void add(E e) { Node<E> newNode = new Node<>(e); if (first == null) { first = newNode; } else { Node<E> lastNode = getLastNode(); lastNode.next = newNode; } size++; }
-
미해결김영한의 실전 자바 - 중급 2편
런타임 의존관계
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]배치프로세서가 컴파일 시점에서는 mylist 인터페이스 의존을 하고 런타임에 생성자 주입을 한다고 하는 데 main 함수도 결국 컴파일 되는 것 아닌가요? 배치프로세서가 유연해 지는 건 이해할 수 있는 데 런타임시점에서 의존성이 주입된다는 부분이 좀 잘 이해가 안갑니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-T 17298번-오큰수 질문
안녕하세요 큰돌 선생님. 수업을 열심히 듣고 있는 학생입니다.정답이 틀려서 질문했다기보단 강의를 보기 전에 스스로 풀었는데 저는 우선순위 큐를 사용해서 풀었습니다. 맞추고 나서 기분이 좋은 상태로 선생님 강의를 봤는데 스택으로 푸셨더라고요.이런 방법도 있구나~ 하면서 어떻게 푸셨는지 로직을 보는데 이게 왜 되는지 오랜 시간 생각을 해봐도 논리? (스택 방식으로 푸는게 왜 유효하고 문제가 없는건지)를 모르겠습니다. ㅜㅜ우선순위큐로 푸는 상황에서는 현재 가르키고 있는 인덱스의 값보다 작은 값의 모든 우선순위큐 안에 있는 인덱스들을 pop을 한다고 확신을 하겠는데 스택은 확신이 안 듭니다예를 들면 스택안에 현재 인덱스가 가르키는 값보다 작은 값의 인덱스들은 저장을 하며 pop을 하다가 더 큰 값 인덱스를 만나서 while문을 멈췄는데 그 밑에 그러니까 더 일찍 들어온 애들 중에 pop을 해야 하는 애가 있는 상황이 있을까봐 저는 스택이 아닌 우선순위 큐부터 써본 것 같습니다. 이렇게 딱 스택을 써도 문제가 없겠다. 즉 위 같은 상황이 안 생기겠다! 라는 생각이 드는 논리를 알고 싶습니다. 그리고 이렇게 논리를 생각해야하는 문제들을 어떻게 대비해야하는지 여쭤보고싶습니다. 제가 머리가 나쁜지 한 10분 생각을 해봐도 스택이 왜 문제가 없는지 아직도 깨닫지 못했습니다 ㅠㅠ이런 논리를 생각해내지 못해서 손도 못댄 문제들이 있습니다. 풀어보셨는지는 모르겠지만 프로그래머스에 요격 시스템이라는 문제는 비슷한 이유로 제대로 풀지 못해서 결국 남의 코드를 봤습니다. 밑에는 우선순위 큐로 푼 코드입니다http://boj.kr/88988bf1465247cea240603121ec5ae7
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
당근마켓 엔지니어 문제 BFS 코드 질문
안녕하십니까 큰돌님제가 강의 보기 전에 당근마켓 엔지니어 문제를 혼자 코드로 작성했었는데뭐가 문제인지 모르겠습니다입력에서 무한루프에 빠지는 왜 빠지는 거 같은데 모르겠습니다 ...http://boj.kr/d57fe9c1c85b4938bc642528ab607f2e그리고 n이 세로, m이 가로이면 반복문에서 n과 m의 위치가 제 코드처럼 바껴야 하는 거 아닌가요 ??
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
선생님 문제 푼거
혹시 블로그에 포스팅 해도 되나요?? 안되면 노션에 할게요 !
-
미해결김영한의 실전 자바 - 중급 2편
컬렉션 프레임워크 - HashSet pdf 오타
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]7. 컬렉션 프레임워크 - HashSet pdf 6페이지 StringHashMain 클래스에 있는 CAPATICY -> CAPACITY로 수정이 필요할거같습니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R 트리 질문있습니다.
안녕하세요! 좋은 강의 들려주셔서 감사합니다!큰돌님 풀이와 dfs를 쓴다는 점에서 크게 다른 것 같지 않은데, 채점이 잘 진행되다가 77% 정도에서 틀렸다고 뜹니다. 많이 생각해 봤지만, 반례가 어떤게 있는지 찾을 수 없어 질문드립니다!http://boj.kr/387ac0e3a8b644d298eb49bf40165f33
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
RangeSearch002 의 singlelist.c 파일 중 질문 있습니다.
강사님 안녕하십니까. 양질의 수업을 제공해주셔서 잘 듣고 있습니다. 다름아니고 질문이 있어서 여쭙고자 게시글 남깁니다.다름아니고 RangeSearch002 프로젝트 중 singlelist.c 파일의 SearchByAgeRange 함수에서 아래와 같은 코드에서 이해가 되지 않는 점이 있습니다. """void** pNodePtrList = malloc(sizeof(void*) * cnt);""" 본 질문의 목적은 아래와 같습니다.ㅇ malloc을 할 때 왜 따로 타입캐스팅을 하지 않았는가? 검색해서 찾아봤을 때 malloc은 타입캐스팅을 해도 되고 안 해도 되지만 제가 한다면 (void *)malloc 으로 썼을 거 같으며, 디버깅했을 때 결과도 동일한 결과물을 제공하는 것으로 확인했습니다.혹시 잘못된 점이 있으면 따끔한 지적 부탁드리겠습니다. 감사합니다. 좋은하루 되십시오.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-B 유기농 배추 질문있습니다
안녕하세요 선생님 🙂 아무리 봐도 선생님이 푸신 풀이와 제가 푼 풀이의 차이점이 없는거 같은데요, 테케는 전부 올바른 답으로 출력되지만 오답으로 나옵니다 ㅠㅠ 왜 그런지 모르겠어서 질문드립니다!http://boj.kr/7871d7ec89b646a69ae96f413011ea9b 그리고 만약에 fill함수가 떠오르지 않는다면 이중for문으로 배열을 초기화하는 방법을 사용해야할 것 같은데요, 시간복잡도 측면에서 손해를 보게 되는지 아닌지 알려주시면 감사하겠습니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-B 유기농 배추 질문있습니다
안녕하세요 선생님 🙂 아무리 봐도 선생님이 푸신 풀이와 제가 푼 풀이의 차이점이 없는거 같은데요, 테케는 전부 올바른 답으로 출력되지만 오답으로 나옵니다 ㅠㅠ 왜 그런지 모르겠어서 질문드립니다!http://boj.kr/7871d7ec89b646a69ae96f413011ea9b그리고 만약에 fill함수가 떠오르지 않는다면 이중for문으로 배열을 초기화하는 방법을 사용해야할 것 같은데요, 시간복잡도 측면에서 손해를 보게 되는지 아닌지 알려주시면 감사하겠습니다 :)
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-F 어느부분이 틀렸는지 모르겠습니다!
스크린을 배열로 만들어서 바구니가 있는 곳은 1, 없는 곳은 0으로 두고, 바구니가 움직이지 않아도 되는 경우, 사과가 바구니 오른쪽에 떨어지는 경우, 왼쪽에 떨어지는 경우로 나누어서 만들어봤습니다!가독성이 떨어지지만 한 번 봐주시면 감사하겠습니다.http://boj.kr/e2e2ca2d3a5d4f728a8ca93048c010f4
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
코드 확인 부탁드립니다 ㅠ
import java.util.*; public class Main { public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[][] arr = new int[n][n]; for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) { arr[i][j] = sc.nextInt(); } } int m = sc.nextInt(); int[] moves = new int[m]; for(int i = 0; i < m; i++){ moves[i] = sc.nextInt(); } ArrayList<Stack<Integer>> board = new ArrayList<>(); for(int i = 0; i < n; i++) { Stack<Integer> temp = new Stack<>(); for(int j = 0; j < n; j++) { if(arr[n-1-j][i] == 0) break; temp.push(arr[n-1-j][i]); } board.add(temp); } Stack<Integer> basket = new Stack<>(); int result = 0; for(int i = 0; i < m; i++) { int num = moves[i]-1; Stack<Integer> stack = board.get(num); if(stack.empty()) continue; int popNum = stack.pop(); if(!basket.isEmpty() && basket.peek() == popNum) { basket.pop(); result += 2; } else { basket.push(popNum); } } System.out.print(result); } }어느 부분에서 틀린지 모르겠습니다. 확인 해주시면 감사하겠습니다.ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-A. 문제가 왜 틀렸는지 모르겠습니다
http://boj.kr/bc50e94cb11649708526317af568f56e이렇게 코드를 짜고, 예제1도 제대로 돌아가는데 어디서 왜 틀렸는지를 잘 모르겠습니다. ㅜㅜ 그리고 저는 조합만 생각했었는데, 왜 순열로도 풀이를 하시는지 이해가 잘 안됩니다. 순열은 순서가 중요하다고 알고있는데, 현재 여기서는 순서가 아무 상관 없지 않나요? 조금만 더 자세히 설명 해주시면 감사하겠습니다그리고, 2:03 부분 쯤에 순열을 가리키시면서 순서에 상관 없이 뽑는다고 하시는 부분이 이해가 안됩니다.
-
해결됨김영한의 실전 자바 - 중급 2편
4. 컬렉션 프레임워크 - LinkedList 오타 수정
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. 4 컬렉션 프레임워크 - LinkedList pdf 파일의 33 페이지 MyLinkedListV3.java 코드의 toString() 메서드에 반환이 MyLinkedListV1으로 되어있습니다. MyLinkedListV3으로 수정 해주시면 감사하겠습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
간단한 질문이 있습니다.
보통 백준을 풀거나 다른 사람의 코드를 참고할때답 마지막에 "\n" 개행을 적는 이유가 뭔가요??보통 백준 제출하면 안적어도 답이 맞는데 잘하시는 분들 보면 마지막에 개행을 거의 넣더라구요예를 들어 출력이 5가 나오면 답인데cout << "5" << "\n" 이렇게 제출하던데 이유가 있나요??코테에서도 개행을 적는게 좋을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제로 해결하는 시간복잡도 4번 질문이 있습니다.
우선, 1. cnt를 찍으며 여러가지 케이스를 도출한 다음 -> 2. (시간이 있다면) 점화식 만들고 / 일반적으로는 어림 잡아서 -> 3. 규칙을 찾아 식으로 만든 후 빅 오 표기법으로 표시한다이런 식으로 복잡도를 구하면 될까요?? 그리고 해당 문제에 대해서는요,저같은 아주 초보자가 복잡도가 Log 랑 관련있겠다 는 걸 아예 감도 못잡고 예제를 통해 규칙을 찾아내고자 3, 6, 15 등...2의 제곱이 아닌 수를 입력하는 경우가 있을 수도 있잖아요. 그럼 더 헷갈릴 것 같은데, 선생님께서는 애초에 2의 제곱을 cin으로 입력 하시면서 규칙을 찾아내시더라구요. 혹시 2의 제곱 수들을 넣어서 예시 값 들을 도출해 내신 이유가 /2 때문인가요?? /= 2 로 나오는 것들의 예시 값들을 도출해 낼 때는 log를 염두 해 두면 될까요??