묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
각각 sort해서 계산하는 것과 계산한 뒤 모아서 sort하는 것
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.3-2 공통 원소 구하기(two pointers algorithm) 문제입니다. public List<Integer> solution(int n, int[] arr1, int m, int[] arr2) { List<Integer> answer = new ArrayList<>(); Set<Integer> set = new HashSet<>(); for(int i= 0 ; i<n; i++) { set.add(arr1[i]) } for(int i= 0 ; i<m; i++) { if(!set.add(arr2[i])) answer.add(arr2[i]); } answer.sort((o1, o2) -> {if(o1 < o2) return -1; else if(o1 == o2) return 0; else return 1;}); return answer; }위는 제가 수업 전에 작성한 코드입니다.1. HashSet으로 중복된 것을 거르고 List로 넣은 후에2. List를 오름차순으로 정렬순으로 코드를 작성했는데 마지막 테스트 케이스에 시간초과가 발생했습니다. [ 질문 ] sort때문에 시간 초과가 나는 것 같은데, 강사님 방법처럼 갖고있는 모든 원소를 sort하는 것보다 중복된 원소만 모아둔 뒤 sort하는 것이 덜 부담될 것이라 생각했는데 왜 시간초과가 나는 것인가요?여기서 시간초과가 날 것이라는 것을 사전에 미리 알 수 있는 방법이 무엇일까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
코딩테스트나 알고리즘 대회 관련 질문입니다.
안녕하세요! 코테 준비가 처음이라 궁금한 점이 있어서 질문합니다. bits/stdc++.h 이 헤더파일을 넣고 하라고 하셨는데요, 시험볼때도 이렇게 작성해도 되나요?대회나 시험을 볼 때는 시험보는 페이지에서 바로 코드를 작성해야 하나요? 아니면 제 노트북에 있는 vscode 나 devC++ 을 사용해도 되는건가요?처음 준비하다 보니 기본적인 부분도 모르는게 많네요ㅠㅠ
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
정답이지만 채점 사이트에서 오답처리가 됩니다
인텔리제이 상에선 코드가 잘 돌아가며 정답이 나오지만 채점 사이트에서는 오답이라고 나옵니다. 코드 어디 부분이 문제가 되는지 잘 모르겠어서 질문 남깁니다.import java.util.*; public class Main { public String solution(String str){ String answer= "YES"; int len =str.length(); str= str.toUpperCase(); for(int i=0;i<len/2;i++){ if(str.charAt(i)!=str.charAt(len-i-1)){ return "No"; } } return answer; } public static void main(String[] args) { Main T = new Main(); Scanner kb = new Scanner(System.in); String str = kb.next(); System.out.println(T.solution(str)); } }
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
마구간 정하기
안녕하십니까 강사님!마구간 정하기 문제를 풀이하실때 말이 3마리인 경우를 가정하고 풀어주시는데 풀이코드로 말이 4이상인 경우 대응이 가능한가요? 문제에 C마리라고 되어있어서요!
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
질문드립니다.
연산자 오버로딩 하는 부분에서 const Loc &b 여기서 b는 그냥 임의로 구조체 이름을 만드신건가요? 왜 b로 만드셨는지 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
10808 알파벳 개수 질문있습니다
로직 자체는 쉽게 생각하고 강의도 이해할수 있었는데 전역변수와 지역변수에 따라 결과다 달라 왜 그런지 알고싶습니다 #include<bits/stdc++.h>using namespace std;typedef long long ll; //int cnt[26];//string str;int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int cnt[26]; string str; cin >> str; for(char c : str){ cnt[c-'a']++; } for(int i = 0 ; i < 26; i++) cout << cnt[i] << " "; return 0;}위 코드처럼 지역변수로 배열과 str을 선언하면 결과가이렇게 나옵니다. 반대로 전역변수로 선언하면 답이 잘 나옵니다. 어떤 이유인지 알수 있을까요?그리고 long long 타입을 쓰는곳이 없는데 typedef long long ll;을 왜 해주는지도 궁금합니다!감사합니다
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
선생님 안녕하세요! String toString 차이가 궁금해요
toString 을 쓰는 이유가 주로 어떨때 어떤 이유로 쓰이나요? 구글 쳐보니까 디버깅 용도외에는 안쓰는게 좋다 이러길래 우리가 사용하는 코테수준의 코드에서 어떤 용도와 어떤 이유로 쓰면 좋을지 알고 싶습니다.특히 !! StringBuild 에서 쓰는 이유도요!StringBuild 를 이용하만 일반적인 String 이랑 형이 다르게 변하는 건가요?? 그리고 valueOf같은경우에 저는 주로 charArray 같은 경우를 나중에 String 으로 만들고 싶을때 주로 사용하거든요? StringValueOf(charArr) 이런식으로요 이 기능 외에도 쓰일때가 있나요?코테 수준에서 ValueOf의 주 기능이 알고싶어요있다면 알려주시면 정말 감사하겠습니다.
-
미해결[EduAtoZ] Python 활용&Cos Pro 2급
2급 4회 1번 문제 영상확인바랍니다.
2급 4회 1번 문제영상이 4번 문제로 올라와 있습니다.혹시 몰라 4번문제영상도 봤는데 같은 영상이더라구요.1번 영상이 없습니다.확인해주세요!
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 리뷰 부탁드립니다!
function solution(k, arr) { let answer = (sum = lt = 0); for (let rt = 0; rt < arr.length; rt++) { let leng = rt - lt + 1; sum += arr[rt]; if (leng === k) { answer = Math.max(answer, sum); sum -= arr[lt++]; } } return answer; } let a = [12, 15, 11, 20, 25, 10, 20, 19, 13, 15]; console.log(solution(3, a));투포인터로 풀어봤습니다.. 이렇게 풀어도 되는걸까요 ?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S 1325 질문 있습니다.
http://boj.kr/e76755768b7d48568716ed808c81ad36 문제는 풀었습니다!ㅎㅎ다만 이해가 안가는 부분이 있는데 다 구현하고 나서 정렬할 때 cmp라는 사용자 정의 연산자를 만들어서 pair의 first값은 오름차순으로 pair의 second값은 내림차순으로 만들고 싶어서 링크의 코드 처럼 구현을 했는데 왜bool cmp(const pair<int, int>& a, const pair<int, int>& b){if (a.first == b.first){return a.second > b.second; 라고하면은 second는 내림차순으로 정렬되고}return a.first < b.first; 라고 하면은 first값은 오름차순으로 정렬되는지}이해가 잘 안갑니다.
-
미해결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 변수를함수 밖에서 전역변수로 선언하였는데, 답이 다르게 나옵니다.답이 다르게 나오는 이유를 잘 모르겠습니다.