묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 중급 2편
compareTo
[질문 내용]처음 문제를 풀떄Card 클래스에 compareTo 오버라이딩을 @Override public int compareTo(Card o) { if(number != o.getNumber()){ return this.number - o.number; } return shape.compareTo(o.getShape()); }위 코드처럼 작성했는데 숫자가 낮은 카드 먼저 안 나올때가 있는데 잘못 작성한걸까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
이렇게 풀어도 괜찮을까요??
http://boj.kr/bd813d5bdae245ea98d864deb61326e6항상 강의를 보기 전에 먼저 문제를 풀어보는데, 이 문제가 특히 오래 걸려서, 개선점을 조언받고 싶어 질문드립니다.오랜 고민 끝에, 문제에서 n의 범위가 10000까지인 것을 보고, 666을 한자리씩 움직이면서 풀어보자고 생각했습니다.이미지 처럼 666을 한 자리 숫자로 보고, 총 5자리가 필요하다 싶어서 for문을 5번 썼습니다.근데 제가 작성한 코드에서 자리수를 옮기는 방법으로 for문을 썼는데, 하드코딩을 한 느낌이라 좋은 방법은 아닌거 같아서 이렇게 풀어도 되나라는 자괴감이 들었습니다.만약 n의 범위가 커지면 커질수록 for문을 더 많이 써야하고, 중첩된 for문도 더 많아지겠지요.개선점이 있거나, 이 문제를 접근하는 방법 자체가 틀렸다면 알려주세요!!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-J 풀이 방법에 관한 질문입니다!
안녕하십니까 강사님!14497 주난의 난 문제를 처음 봤을 때 큐가 생각나지 않고 제가 큐를 활용을 잘 못해서 큐를 활용하지 않고 다음과 같이 풀이했습니다! 혹시 이렇게 가능하면 이런식으로 풀이해도 괜찮은지 해서 질문드립니다!또한 큐를 이용한 풀이와 제가 작성한 풀이 중 다시 풀게 되면 어떤 방식으로 풀이를 해야할지 고민이 됩니다!http://boj.kr/ae0a62fcf0dc4408862db0cedbab4519
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
영상에서 설명이 잘못됐고 자막이 맞는 내용이라고 자막에 표기
1MB = 100만개라고 말씀하시고 자료에도 그렇게 나오는데 자막만 이상한 내용이 떠 있네요. 자막이 맞는 내용이군요. 설명하시는 내용이 잘못된 것이라고 자막에 나온다면 좋을거 같네요. 왜 자막과 음성이 다른 내용을 얘기하시나 했습니다.
-
미해결김영한의 실전 자바 - 중급 2편
직접 구현하는 연결리스트 3 - 추가 부분 질문있습니다
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.강의 보기 전에 미리 만들어 본 코드입니다. 3번째 줄에서 afterNode를 안 만들고 주석처리한 코드를 afterNode 자리에 넣으니오류가 발생하네요그리고수업중 코드에서도 2번째줄 코드 위치만 바껴도 위와 똑같은 오류가 발생하네요 왜그런걸까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
틀린문제(못 푼 문제) & 직장인 공부 방법 질문드립니다.
안녕하세요현재 1주차를 3주째 보고있는 직장인 수강생입니다..코테가 거의 초보수준이다보니 1주차 문제도 절반도 채 스스로 못 풀고 강의로 문제풀이를 보고있습니다.우선 틀린, 못 푼 문제들을 따로 기록은 해두었는데 복습은 어떤식으로 진행하면 좋을지 모르겠습니다. ( ex. 매 주차 강의 다 끝내고 다시 풀기 or 다음날 다시풀기 등등.. ) 그리고 매 주차 안에 반드시 할당된 강의를 소화해야만 의미가 있는걸까요? 일이 바쁜지라 쉽지않아서 고민입니다 🥲
-
미해결세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
최대값 int(1e6, 1e7, 1e8) 기준
선생님 안녕하세요. 최대 혹은 최소값으로 ans를 int(1e6, 1e7, 1e8) 등 다양하게 설정하시는데 혹시 기준이 있을까요?문제를 풀다 보면 탐색 전에 미리 최소값이나 최대값을 세팅해야 하는 경우가 있는데, 그 세팅의 베스트 프랙티스나 혹은 float(int) 같이 최대/최소값을 따로 정하시는 로직이 후반부에 나오는지 궁금합니다.
-
해결됨김영한의 실전 자바 - 중급 2편
섹션 8-58 equals and hashcode 에서 코드가 다르게 생성됨
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.@Override public boolean equals(Object object) { if (this == object) return true; // 강의에서 생성자를 통해 생성된 코드 if (object == null || getClass() != object.getClass()) return false; Member member = (Member) object; return Objects.equals(id, member.id); }@Override public boolean equals(Object object) { // 질문자의 생성자를 통해 생성된 코드 if (object == null || getClass() != object.getClass()) return false; Member member = (Member) object; return Objects.equals(id, member.id); }위와 같이 코드가 다르게 생성 되는데 차이가 있는지 , 혹은 설정이 잘못된건지 궁금합니다.OS 는 윈도우 ,sdk 는 ms-21 사용중입니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
강의자료 질문드립니다.
안녕하세요.강의에 업로드되어있는 c++ 알고리즘 교안과 알고리즘 개념교안이 같은 파일이 업로드 되어 있는 것 같습니다.기존에 보았던 10주 완성 c++ 알고리즘 파일을 다운 받을 수 없는데 조치 부탁드립니다!
-
미해결더 개발자, 인터뷰 가이드
인터뷰 미션 보냈습니다.
백기선님. 안녕하세요!강의 너무 잘들었습니다. 다름이 아니라 이력서 피드백 관련해서 메일 보냈었는데요.!확인 한번 부탁드립니다!!
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
87번 채점 프로그램에 오류가 있는 것 같습니다.
#include <iostream> #include <vector> #include <queue> using namespace std; int n, cnt; int dir[8][2] = { { 1, 0 }, { 0, 1 }, { -1, 0 }, { 0, -1 }, { 1, 1 }, { -1, 1 }, { 1, -1 }, { -1, -1 } }; vector<pair<int, int> > islands; vector<vector<bool> > map; void searchIsland(int y, int x) { if (map[y][x]) { return; } ++cnt; queue<pair<int, int> > q; q.push({ y, x }); map[y][x] = true; while (!q.empty()) { pair<int, int> pos = q.front(); q.pop(); for (int i=0; i<8; ++i) { int tY = pos.first + dir[i][0]; int tX = pos.second + dir[i][1]; if (tY < 0 || tX < 0 || tY >= n || tX >= n) { continue; } if (map[tY][tX]) { continue; } map[tY][tX] = true; q.push({ tY, tX }); } } } int main(int argc, char** argv) { int v; cin >> n; map.resize(n); for (int i=0; i<n; ++i) { map[i].resize(n); for (int j=0; j<n; ++j) { cin >> v; map[i][j] = !v; if (v) { islands.push_back(make_pair(i, j)); } } } for (int i=0; i<islands.size(); ++i) { searchIsland(islands[i].first, islands[i].second); } printf("%d", cnt); return 0; } 작성된 테스트 케이스를 직접 써보니 output과 동일한 결과가 나오는데도 모두 틀렸다고 나옵니다. 제 파일 문제인가 싶어서 프로그램을 다시 다운받아서 똑같은 실행 파일을 붙여넣어도 틀렸다고 나옵니다.혹시나 해서 강사님 소스 코드를 복사해 빌드하여 제출해보니 역시나 틀렸다고 나옵니다.확인 부탁드립니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-A 질문드립니다!
안녕하세요.1-A를 푸는 도중 궁금한 부분이 생겨 질문드립니다.해당 문제 출력 조건에 일곱 난쟁이의 키를 오름차순으로 출력한다고 되어있는데,next_permutation을 사용했을 때 어떤 이유로 출력 직전에는 a[0] ~ a[6] 을 sort 하지 않는 것인지 궁금합니다.처음에 입력값을 배열에 받은 뒤에 sort를 통해서 정렬을 하고 들어가도 순열이다 보니까 중간에 오름차순으로 정렬되지 않을 수도 있는데 어떤 이유인지 궁금합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-Q
http://boj.kr/8dec3ec12c294bc6b22189db0403ed50선생님 복습을 하다가 이렇게 cheese가 없으면 break해서 cnt의 그 전 값을 보존하는 방법은 어떨까 해서 질문 드립니다!이렇게 하면 치즈가 다 녹았는지 다시 체크 안해도 될 것 같아서 더 효율적일 것 같아 질문 드립니다!
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
섹션 3 BOJ 1342 //= 연산자 관련
안녕하세요, 코드 마지막에 순열의 중복 제거를 위한 로직을for i in range(...): ans //= fact(S.count(chr(i))) 아래처럼 직접 분모를 먼저 구하는 방식으로 구현하고 대입했는데 채점에서 풀이가 틀렸다고 나옵니다.deno = 1for i in range(...): deno *= S.count(chr(i)))ans = int(ans/deno)순열 공식상 순열의 개수 ans/deno는 항상 정수가 나옴이 자명함에도 왜 //=를 써야 정답이 되는지 궁금합니다.
-
미해결코딩테스트 [ ALL IN ONE ]
그래프
그래프 1번 문제는 for문 2번을 사용하는데 그래프 2번은 왜 for문을 2번을 안하는걸까??
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
다익스트라 알고리즘
제가 이해한 것이 맞는지 궁금해서 질문드립니다.pq에서 poll이 됐다는 것은 poll이 된 해당 정점은 dis 배열에서 최소 비용이 확정됐다는 것이죠?만약 3번 정점의 비용이 4로 최소비용 확정이 되었는데 이것은 1 -> 3으로 갔을 때인 거잖아요. 그럼 1이 아닌 다른 정점에서 3번으로 가는 경우도 pq에서 poll이 될텐데 이미 확정이 났기 때문에 수행속도를 줄이기 위해 if continue 문을 쓰신건가요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-A 질문있습니다!
4-A 를 저 혼자 풀어봤는데 정답 99% 에서 자꾸 오류가 납니다 ㅜㅜ...http://boj.kr/5d5b1d57540140d780129a99defd6bf8도와주세요..
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
그리디 파트
선생님 강의 잘 보면서 공부하고 있는데요혹시 그리디 파트가 어디예요?알려주시면 감사하겠습니다!
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
dp를 이용한 계단 오르기
5번째 계단으로 오는 방법의 수가 8인 이유가 제가 이해한 게 맞는지 궁급합니다.i - 2번째 계단에서는 두 칸 점프 즉 +2가 붙는 경우를 고려한거고i - 1번째 계단에서는 한 칸 점프 즉 +1이 붙는 경우를 고려한건가요?5번째 계단을 구할 때 3번째 계단까지 오는 경우의 수는 3이고 이 3개의 경우에 전부 +2가 붙어서 5가 되고4번째 계단까지 오는 경우의 수는 5인데 이 5개의 경우 전부 +1씩해서 5가 되어서3 + 5 = 8이 되는 로직이 맞는지 질문드립니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
계단오르기
import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.*; public class Main { static int cnt = 0; public static void dfs(int sum, int n) { int[] arr = {1, 2}; for (int i = 0; i < arr.length; i++) { sum += arr[i]; if (sum == n) { cnt++; sum -= arr[i]; } else { if (sum < n) dfs(sum, n); sum -= arr[i]; } } } public static void main(String[] args) throws Exception { BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(bufferedReader.readLine()); dfs(0, n); System.out.println(cnt); } }dp를 잘 몰라서 자력으로 dfs 방식으로 풀었는데 그닥 좋지 않은 접근일까요...?