묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[8 - P] 질문입니다
안녕하세요 선생님, 벨만 포드 사이클에 대해 이해가지 않는 부분이 있어 질문을 드립니다. https://www.acmicpc.net/source/share/34ff214ab6c944f59092bb5282b4c00e답지 31 ~ 46라인에 대해 이해가 잘 안되는 상태입니다.사이클이 발생할 수 있는 모든 here을 큐에 넣어둔 후there.first == e일 경우 돈을 무한대로 가질 수 있다고 처리하고 있는데 사이클 발생 끝 지점이 종료 노드인것이 어떻게 돈을 무한대로 가질 수 있다는 뜻이 되는지 모르겠습니다. 음의 사이클이 일어난 시작지점이 종료노드 바로 직전이었다고 한다면 종료노드에 가기 전까지 음의 사이클을 돌며 가진 돈을 줄였으면 줄였지 늘리진 못할 것 같고 음의 사이클을 타지 않더라도 벌 수 있는 돈은 마지막에 벌 수 있는 돈= (종료노드 직전까지 벌 수 있는 돈의 최대값) - (시작지점 ~ 종료지점 교통비) + (종료지점에서 번 돈)으로 한정될 것으로 보이는데 돈이 무한대가 될 수 있는 이유는 무엇인가요?
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
강의 자료 다운로드가 안됩니다
강의 구매하고 강의자료 다운로드를 받으려는데 먼저 크롬에서 파일 다운로드가 차단돼었고크롬 보안을 끄고 다운로드를 받으려니 바이러스가있어서 다운로드가안된다고 뜨는데왜그런걸까요 ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-G 어느 부분이 틀렸는지 모르겠습니다.
안녕하세요 강의 안보고 제 방식대로 일단 작성을 해보았는데 어느 부분이 틀렸는지 모르겠습니다. 예제는 맞는데 계속 오답이 나와서 여기에 질문 올립니다.http://boj.kr/93f413d4caad435dbb67578593137ac9
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-G 질문드립니다.
안녕하세요 강사님방법은 다릅니다만 빈도수와 입력 위치(순서)까지 고려해서 작성한 코드인데 왜 자꾸 틀리는지 모르겠어서 질문드립니다.http://boj.kr/c9afb96481d348eaaa0f32b0bb0e9977어디가 잘못된 것일까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
8-D 풀이 코드 질문 입니다.
강사님 안녕하세요~풀이해주신 코드에 대해 제가 이해한 것이 맞는지 해서 질문드립니다.풀이코드https://www.acmicpc.net/source/share/e2de316babff4d9b808e18926d718fc9에서 52,54 line 에서 find_index 함수로 부터 구해진 index 에 +1 을 더해주는 이유가,find_index 함수의 반환값이 0 인 경우 fenwick tree update/sum 의 idx 로 바로 사용할 수 없으므로, find_index 반환 값에 +1 을 한 것으로 이해하면 될까요? 위에서 제가 이해한 내용이 맞다면아래 제가 제출한 코드와 같이https://www.acmicpc.net/source/share/5b723f25c81b4f8581fa7fd6caf8f480sum, update 함수 내부에서 idx 를 1만큼 증가시키는 것도 동일한 것이겠죠?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
큰돌님 안녕하세요
안녕하세요 큰돌님! 게임 회사에 게임 개발자로 입사하려는 취준생입니다!넥슨을 목표로 하고 있습니다만 모든 기업에 서류를 넣어볼 것 같습니다(3N, 크래프톤, 컴투스 등등 대기업 or 중견). 그래서 코딩테스트를 준비하는중에 큰돌님의 강의를 만나게 됐습니다 :)게임 회사의 코딩테스트 난이도가 궁금합니다! 가끔 코테에 SQL도 있던 걸 본 것 같은데 SQL 같은 것도 보는지 궁금하고요!
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
[47번 봉우리] 무엇때문에 안되는 걸까요?
[47번 봉우리 문제]똑같은 논리로 구조를 짰는데, 하나는 정답이고 하나는 오답이에요.왜일까요? 제가 생각했을때 둘의 차이는 배열의 할당 방식뿐입니다. (정적vs동적)배열을 포인팅 하는 방식에서 잘못된게 있나요...? [정답]#include <iostream> #include <cstdlib> #include <stdio.h> #include <queue> #include <vector> using namespace std; const int dir[4][2] = {{-1, 0}, {0, 1}, {1, 0}, {0, -1}}; int map[52][52], mem[52][52]; int n, i, j, cnt = 0; int main(void) { scanf("%d", &n); for (i = 1; i <= n; i++) { for (j = 1; j <= n; j++) { scanf("%d", &map[i][j]); } } for (i = 1; i <= n; i++) { for (j = 1; j <= n; j++) { int ni, nj, k; bool b = true; for (k = 0; b && k < 4; k++) { ni = i + dir[k][0]; nj = j + dir[k][1]; if (map[ni][nj] >= map[i][j]) b = false; } if (b) { cnt++; // printf("i:%d j:%d일 경우에 cnt++\n", i, j); } } } printf("%d", cnt); return 0; } [오답]#include <iostream> #include <cstdlib> #include <stdio.h> #include <queue> #include <vector> using namespace std; int N; int *a; int dir[4][2] = {{-1, 0}, {0, 1}, {1, 0}, {0, -1}}; // (y,x) int main(int argc, char *argv[]) { scanf("%d", &N); int i, j, cnt = 0; int ni, nj, k; a = new int[(N + 2) * (N + 2)]; for (i = 1; i <= N; i++) for (j = 1; j <= N; j++) scanf("%d", a + i * (N + 2) + j); for (i = 1; i <= N; i++) { for (j = 1; j <= N; j++) { bool b = true; for (k = 0; b && k < 4; k++) { ni = i + dir[k][0]; nj = j + dir[k][1]; if (*(a + ni * (N + 2) + nj) >= *(a + i*(N + 2) + j)) b = false; } if (b) { cnt++; // printf("i:%d j:%d일 경우에 cnt++\n",i,j); } } } printf("%d", cnt); free(a); return 0; } P.S.이것을 디버깅해보면서 느끼는데, Dev-C++이 제가 알던 Visual Studio보다 디버깅하기가 훨씬 힘드네요...ㅠㅠ 원래 그런건가요? 바쁘시겠지만 시간 되실때 디버깅 하는 팁도 영상으로 공유해주시면 도움이 정말 많이 될 것 같아요ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
질문있습니다.
결과는 다 잘나오는데 런타임에러가 뜨네요.. 뭐가 문제인지 모르겠습니다..http://boj.kr/0434a25d28f94fd39be7497b207f6dca
-
미해결[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
Object
6:30에 test5.number는 왜 안되나요?그리고 println(TestObjectClass().number)도 똑같이 안되던데 println(TestObjectClass.number)하고 println(TestObjectClass().number)가 무슨 차이가 있나요?
-
미해결더 개발자, 인터뷰 가이드
이력서 미션 보냈습니다.
헉 이력서 미션 후 해당 영상을 보았네요 ,,,이력서 사진부터 주소까지 적어 보냈어요..하하핫죄송합니다,,ㅠㅠ
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
8. 응급실 문제에서 큐에 넣어준 임시변수를 null 값을 새로 할당할 필요가 없지 않을까요?
while문 안의 for문 안에서 if문에 큐에 넣어준 변수 temp에 null을 할당하지 않아도 로직상으로 문제가 안된다고 생각하는데, 그렇게 생각해도 될까요? import java.util.*;import java.io.*;class Person {int id;int priority; // 위험도public Person(int id, int priority) {this.id = id;this.priority = priority;}}public class Main {public int solution(int n, int m, int[] arr) {int answer = 0;Queue<Person> q = new LinkedList<>();for (int i = 0; i < n; i++) {q.offer(new Person(i, arr[i]));}while (!q.isEmpty()) {Person temp = q.poll();for (Person person : q) {if (person.priority > temp.priority) {q.offer(temp);// temp = null;break;}}if (temp != null) {answer++;if (temp.id == m) {return answer;}}}return answer;}public static void main(String[] args) throws IOException {Main main = new Main();BufferedReader br = new BufferedReader(new InputStreamReader(System.in));StringTokenizer st = new StringTokenizer(br.readLine());int n = Integer.parseInt(st.nextToken());int m = Integer.parseInt(st.nextToken());int[] arr = new int[n];st = new StringTokenizer(br.readLine());for (int i = 0; i < n; i++) {arr[i] = Integer.parseInt(st.nextToken());}System.out.println(main.solution(n, m, arr));}}
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
완전탐색(For 반복문) 14분
for x in range(-10000, 10001): for y in range(-10000, 10001): if A * x + B * y == C: if D * x + E * y == F: print(x, y) break range가 빠진거죠?
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이렇게 해도 괜찮은건가요?
def DFS(L,a,b,c): global res if L==n: if a==b or a==c or b==c: return v1=max(a,b,c) v2=min(a,b,c) res = min(res, v1-v2) return DFS(L+1,a+p[L],b,c) DFS(L+1,a,b+p[L],c) DFS(L+1,a,b,c+p[L]) n=int(input()) p=[ int(input()) for _ in range(n) ] res=2147000000 DFS(0,0,0,0) print(res)강사님과 동일한 접근 방법으로 상태트리를 그려보고 코드를 작성했는데, 이 방법도 강사님 코드와 시간 효율면에서 동일한 성능을 갖나요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-E
안녕하세요 큰돌님! 문제를 푸는 도중 답이 안나와서 해결 영상을 보던중 강사님과 코드가 비슷해 달가와하고 있던 수강생입니다!강사님께서는제가 1. 같은 수 인지 확인 주석해놓은 부분에서 go 함수 4개를 호출하시던데 이중 for문 안에서 하는 이유가 있을 까요? 최초에 go(0, 0, n)에서 시작하는 순간부터 한번이라도 틀린게 나오면 go 함수 4개를 호출하는 것이 맞다고 생각해서 저는 저렇게 작성하였습니다.+ 제 코드가 오류가 나는데 이유를 잘 모르겠습니다...구글링을 해봐도 안나와서 도움 요청드립니다..!강의 영상 항상 감사합니다 :)http://boj.kr/febf3b03187c4c019488df967a6901b4
-
해결됨[자바/Java] 문과생도 이해하는 DFS 알고리즘! - 입문편
촌수계산질문
안녕하세요! 선생님이 알리켜주신대로 한번 다시 하다가 저는 bfs 메소드에서 ++count로 했는데 count+1과 무슨 차이가 있을까요?? 백준에서 돌려봤더니 틀렸다고 떠요! private static void dfs(int start, int count) { visited[start]=true; if(start==end){ answer=count; return; } for(int i=1;i<=N;i++){ if(visited[i]==false&&graph[start][i]){ dfs(i,++count); } } }
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
런타임에러(ArrayIndexOutOfBound) 가 나는 이유
안녕하세요 강사님 강사님 강의 문제에 대한 질문이 아니라 답변하기 힘드시면 괜찮습니다.강사님 강의를 다 듣고 추천해주신 백준 문제들을 풀다가 질문이 있어 질문드립니다. 백준 9019 문제에 관한 질문인데 백준에서 채점 받을때 ArrayIndexOutOfBound 가 나는 이유를 제 코드를 살펴봐도 어디서 문제이지 찾을 수 없어 질문드립니다. 9019 의 문제의 솔루션을 구글링 해봐도 다 똑같은 코드로만 작성을 해놔서 제가 작성한 코드가 어디가 문제였는지 알고 싶어 질문드립니다.package Baekjoon; import java.util.*; class DSLR { public int result; public String command; DSLR(int result, String command) { this.result = result; this.command = command; } } public class _9019 { static boolean[] ch = new boolean[10000]; static ArrayList<String> list = new ArrayList<>(); public void BFS(int input, int output) { Arrays.fill(ch, false); Queue<DSLR> q = new LinkedList<>(); q.offer(new DSLR(input, "")); while(!q.isEmpty()) { DSLR tmp = q.poll(); if (tmp.result == output) { list.add(tmp.command); break; } for (int i = 0; i < 4; i++) { if(i == 0) { int next_result = (tmp.result * 2) % 10000; if (!ch[next_result]) { String next_command = tmp.command + 'D'; ch[next_result] = true; q.offer(new DSLR(next_result, next_command)); } } if (i == 1) { int next_result = tmp.result - 1; if (next_result == 0) next_result = 9999; if (!ch[next_result]) { String next_command = tmp.command + 'S'; ch[next_result] = true; q.offer(new DSLR(next_result, next_command)); } } if (i == 2) { int next_result = (tmp.result % 1000) * 10 + (tmp.result / 1000); if (!ch[next_result]) { String next_command = tmp.command + 'L'; ch[next_result] = true; q.offer(new DSLR(next_result, next_command)); } } if (i == 3) { int next_result = (tmp.result % 10) * 1000 + tmp.result / 10; if (!ch[next_result]) { String next_command = tmp.command + 'R'; ch[next_result] = true; q.offer(new DSLR(next_result, next_command)); } } } } } public static void main(String[] args) { _9019 T = new _9019(); Scanner sc = new Scanner(System.in); int test = sc.nextInt(); for (int i = 0; i < test; i++) { int a = sc.nextInt(); int b = sc.nextInt(); ch[a] = true; T.BFS(a, b); } for(String x : list) { System.out.println(x); } } }
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-O 질문입니다.
안녕하세요 큰돌님. 강의를 듣고 있는 수강생입니다.현재 큰돌님 코드에서 while(scanf("%d", &n) != EOF)라는 코드를 작성하셨는데 EOF를 생략하고 cin >> n의 형식으로 작성을 하니 틀렸다고 뜹니다. 이에 EOF를 왜 사용하지 않으면 틀리는지 궁급합니다. 다음은 코드입니다.http://boj.kr/6b818f7ca5394a209864fb4063aa8811
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-1 질문입니다.
큰돌님이 올려주신 코드가 "all 이거나 empty일때는 n 입력을 받지 말아야합니다."이거를 충족 못하는거 아닌가요? 계속 문자열과 정수를 입력 받는데..그리고 답안 코드에는 scanf(" %s~~) 이렇게 띄어쓰기가 들어갓는데 이 부분도 쓰고 안쓰고가 매우 중요하다고 알고있는데.. 3. 실제로 돌렷을때는 정상 답안이 나오니 아마 위에 두개의 제 생각이 다 틀리겠죠..?ㅎㅎ 설명해주시면 감사하겠습니다..ㅠㅠ 항상 감사드립니다.
-
미해결자바 코딩테스트 - it 대기업 유제
다이나믹 프로그래밍 알고리즘에 대해 질문드립니다.
문제를 보고 이 문제가 dp문제다라는 것을 어떻게 알고 진행하는지 궁금합니다. 다양한 알고리즘이 존재하는데, 따로 문제에서 dp문제라는 주목할만한 힌트가 있나요???
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
IDE 질문입니다
IDE 를 DEV C++ 사용 하는대 Visual studio 로 해도 상관이 없나요?