묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1068 트리 질문있습니다.
http://boj.kr/389b7e0d0a034cdd81d006051776fb8a어디에서 OutOfBounds가 발생하는 지 모르겠습니다...
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드리뷰 부탁드립니다.
(사진)
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
인구 이동 문제 시간복잡도 질문
안녕하세요 강사님. 인구 이동 문제 시간복잡도에 대해서 질문드립니다.N이 최대 50으로 모든 나라를 탐색한다고 가정하면 2500.인구이동의 횟수는 최대 2000.연결 컴포넌트를 구해야하기 때문에 방문 처리를 해주므로, 시간복잡도가 2500 * 2000으로 생각했습니다.맞을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
시간복잡도Q4 질문
while(i > 0){ a += i; i /= 2; } 위 코드에서 i가 계속 나뉘어 져도 0보단 크니까 무한히 돌아가는걸로 이해했는데 강의에선 아니여서 질문 남깁니다..!i = 4 이면 i가 2->1->0.5->0.25 ... 이렇게 되는게 맞지만 int형 변수이기 때문에 그냥 0으로 처리되어서 종료조건을 만족하는것인가요?
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
풀어보면 좋은 문제목록 글자가 이상합니다
다 깨진건지 한글로 어떻게 쓰여있는지 알고싶습니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-N, 14002번, 가장 긴 증가하는 부분 수열4
항상 감사히 듣고 있습니다. 틀린 코드http://boj.kr/89f3498f8d764bc28b21da4a0e6b6844 맞는 코드http://boj.kr/af18217ef5ac4519b765ccdc934c208c차이는 LIS의 max값을 구하는 maxi와index값을 전역변수로 두냐 안두냐로 78%에서 segfault가 발생합니다. 크게 상관이 없는거 같은데 왜일까요? 지역변수일때 초기화 안해줘서 그런가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
보물섬 문제 시간복잡도 질문
안녕하세요 강사님.궁금한게 있습니다. 처음에 이 문제를 풀려고 했을 때, 조합을 떠올렸었습니다.모든 육지에서 두 육지를 골라서 특정 한 육지에서 다른 육지까지의 최단거리를 구하는 느낌으로요.그리고 최단 거리의 최댓값을 계속 갱신하는 느낌으로 생각했습니다. 시간 초과가 발생할 거 같다고 생각했고, 실제로 시간 초과가 발생했습니다. 그 이유로 최악의 시간복잡도가 2500C2 * 2500 이어서 그럴까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S 질문드립니다
https://www.acmicpc.net/source/54668095인접행렬로 풀 때 메모리 초과가 나서 변경하였는데 시간초과가 나는 이유를 모르겠습니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
배열 합치기 다른 방법
안녕하세요 강사님 배열 합치기 문제에서제가 먼저 풀었을때는 아래와 같이 풀어서 accept가 떴긴 했는데 강사님이 강의해주신 코드와 제 코드 시간 비교를 해보니 10ms 정도 차이가 나더라고요 (제 코드가 조금 더 running time이 깁니다.)혹시 아래 코드를 코딩테스트에서 사용해도 딱히 무방한가요??? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. import java.util.*; public class Main { public ArrayList<Integer> solution(int n, int[] arr1, int m, int[] arr2) { ArrayList<Integer> answer = new ArrayList<>(); for (int x : arr1) answer.add(x); for (int x : arr2) answer.add(x); Collections.sort(answer); return answer; } public static void main(String[] args) { Main T = new Main(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); int[] arr1 = new int[n]; for (int i = 0; i < n; i++) { arr1[i] = kb.nextInt(); } int m = kb.nextInt(); int[] arr2 = new int[m]; for (int i = 0; i < m; i++) { arr2[i] = kb.nextInt(); } for (int x : T.solution(n, arr1, m, arr2)) { System.out.print(x + " "); } } }
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문드립니다!
미로탐색 코드에서 DFS 함수 내에 int xx, yy 변수를함수 밖에서 전역변수로 선언하였는데, 답이 다르게 나옵니다.답이 다르게 나오는 이유를 잘 모르겠습니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
최소힙 문제를 이분정렬로 풀어보았습니다. 코드 조언 부탁드릴게요!
from collections import deque List = [] List = deque(List) List2 = [] while(True): x = int(input()) if x != 0 and x != -1: m = 0 n = len(List) -1 answer = len(List) if List: while(m <=n): if x <= List[(m+n)//2]: answer = (m+n)//2 n = (m+n)//2 -1 else: m = (m+n)//2 + 1 List.insert(answer, x) else: List.append(x) elif x == 0: if len(List) == 0: List.append(-1) else: List2.append(List.popleft()) else: break for _ in List2: print(_)정답 출력을 위해 List2 로 정답들을 담았고pop 시간을 줄이기 위해 deque를 썼습니다.이렇게 풀어도 괜찮을까요?
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
dev 프로그램 질문
안녕하세요 강의 주행 오늘 시작한 대학생입니다.아무리 코드를 수정하고 컴파일해도 AA.exe 실행 결과값이 그대로이고 채점도 오류가 나서 알아보다가 결국 제가 default application 으로 파일을 열고 거기서 코드를 수정했다는게 것이 잘못인걸 깨달았습니다.dev c++에서 main.cpp 파일에서 우클릭->open with -> default application. 이렇게 열면 main.exe 가 AA파일에 생성된걸 확인할 수 있었는데 이렇게 여는 기능은 언제 쓰이는지 궁굼합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4 - A 재질문합니다
http://boj.kr/cd6fbe132cfd4b3dbe5e0c746db37b16실수로 공유를 안눌렀네요 ㅎㅎ..질문했던 글 복붙해서 다시 올리겠습니다!ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ제가 찾아본 모든 반례 체크 다 통과했습니다.아무래도 사전순 판단하는 로직때문에 틀린 것 같긴한데,,ans 배열과 sel 배열을 비교해서 ans의 요소가 더 크면 break를 해주고 sel의 값으로 바꿔 주었는데 반례가 딱히 떠오르지 않으니까 답답합니다..
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/594b7963c3a048d9bd78bb21f1fe88a4강사님 코드에서 for(auto i : v) 이것 말고는 동일한 것 같은데, 왜 오답일까요..??
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드리뷰 부탁드리겠습니다.
function solution(str, list) { let mustWord = str.split(''); // c, b, a let fullWord = list.split(''); while (fullWord.length !== 0) { if (mustWord[mustWord.length-1] === fullWord[fullWord.length-1]) { mustWord.pop(); fullWord.pop(); } else { fullWord.pop(); } } return mustWord.length !== 0 ? "NO" : "YES";
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-D 다른 풀이 질문입니다.
안녕하세요.아래 코드블럭은 다른 풀이로 푼 코드인데, 이건 통과가 됩니다.근데 문제는 첨부한 링크의 코드는 왜 통과가 안되는지 모르겠습니다 ㅠㅠ나름의(?) 성능향상 빼고는 동일한 코드라고 생각이 드는데 뭐가 문제일까요? 통과#include <bits/stdc++.h> using namespace std; string s; int ret = 1; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> s; for (int i = 0; i < s.size() / 2; i++) { if (s[s.size() - 1 - i] == s[i]) { ret = 1; } else { ret = 0; break; } } cout << ret << '\n'; return 0; } 에러http://boj.kr/91c918183ef8436187679d76a3e38c96p.s. 백준에서는 s.size()의 타입 관련한 에러라고 뜨는데… 그게 문제라면 둘다 에러가 나야하는거 아닌가 해서요. (vscode에서 컴파일 에러는 안뜹니다.)항상 감사합니다.
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
송아지 찾기 문제
package dfs_and_bfs; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; public class Solution_7 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String positions[] = br.readLine().split(" "); int S = Integer.parseInt(positions[0]); int E = Integer.parseInt(positions[1]); Queue<Integer> queue = new LinkedList<>(); int levels[] = new int[10001]; boolean[] visited = new boolean[10001]; queue.offer(S); levels[S] = 0; visited[S] = true; int[] dis = {1, -1, 5}; while(!queue.isEmpty()) { int pos = queue.poll(); if(pos == E) { System.out.println(levels[pos]); break; }else { for(int i = 0; i < dis.length; i++) { int newPos = pos + dis[i]; if(newPos >=1 && newPos <= 10000 && !visited[newPos]) { queue.add(newPos); levels[newPos] = (levels[pos] + 1); visited[newPos] = true; } } } } } } 혹시 이런 식으로 구현하게 되면 levels 라는 배열이 필요하게 되는데 맞나요? 채점 사이트에서는 맞았다고 나옵니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4 - A 40%에서 틀리네요..
https://www.acmicpc.net/source/54677521모든 반례 체크 다 통과했습니다.아무래도 사전순 판단하는 로직때문에 틀린 것 같긴한데,, ans 배열과 sel 배열을 비교해서 ans의 요소가 더 크면 break를 해주고 sel의 값으로 바꿔 주었는데 반례가 딱히 떠오르지 않으니까 답답합니다..
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
런타임 에러가 뜨는 이유가 궁금합니다!
강의를 보기 전에 혼자 고민하고 작성했던 코드입니다. 출력은 잘 나오는데 채점 사이트에서 런타임 에러가 떴는데, 런타임 에러 어떤 상황에서 나오는지 궁금합니다!import java.util.*; public class Main { public int solution(int n, int[][] arr2) { int answer = 0; int sum = 0; // 각 행의 합 for (int i = 0; i < n; i++) { sum = 0; for (int j = 0; j < n; j++) { sum += arr2[i][j]; } answer = Math.max(sum, answer); } // 각 열의 합 for (int i = 0; i < n; i++) { sum = 0; for (int j = 0; j < n; j++) { sum += arr2[j][i]; } answer = Math.max(sum, answer); } // 두 대각선의 합 // 00 -> 11 -> 22 -> 33 -> 44 // 04 -> 13 -> 22 -> 31 -> 40 sum = 0; for (int i = 0; i < n; i++) { sum += arr2[i][i]; } answer = Math.max(sum, answer); sum = 0; for (int i = 0; i < n; i++) { sum += arr2[i][n-i-1]; } answer = Math.max(sum, answer); return answer; } public static void main(String[] args) { Main T = new Main(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); int[][] arr = new int[5][5]; for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { arr[i][j] = kb.nextInt(); } } System.out.println(T.solution(n, arr)); } }
-
해결됨IT 기업 취업을 위한: 코딩테스트 혼자서 정복하기 (C/C++)
강의자료
안녕하세요. 제가 못 찾은 것일 수도 있지만 '그래프와 탐색 알고리즘' 부분의 강의자료가 보이지 않아서 혹시 업로드해 주실 수 있는지 문의드립니다.