시간초과 문제
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요, 수강생입니다. 혹시 시간초과가 나서 혹시 제가 실수한게 있을까요..? https://www.acmicpc.net/submit/1940/62536370 ㅜㅜ,,,
- c++
- 코딩-테스트
173만명의 커뮤니티!! 함께 토론해봐요.
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요, 수강생입니다. 혹시 시간초과가 나서 혹시 제가 실수한게 있을까요..? https://www.acmicpc.net/submit/1940/62536370 ㅜㅜ,,,
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요~ 좋은 강의 잘 보고 있습니다. 1 - G를 풀 때, 백준 입력을 그대로 터미널에 붙여 넣는 경우(복사 버튼 사용)에 아래 캡처와 같이 출력이 함께 되어 버리는데 이 케이스를 해결하는 방법을 혹시 아실까요? 해당 이슈 때문에 백준 제출 시에는 문제가 없는데 VSC에서 정답인지 아닌지 출력을 제대로 확인할 수가 없네요... 참고로 위 출력 이슈의 소스코드는 문제 해설의 소스코드와 동일합니다.
해결됨
글로벌 개발자로 성장하는 < 코딩 실무 영어 /> 마스터 클래스
안녕하세요 수강생 여러분, 본 코딩 영어 클래스를 수강해 주셔서 정말 감사합니다. 궁금한 점, 문의사항이 있으시면 언제든지 편하게 말씀해 주세요 :) 긱하우스 장진호 드림
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
http://boj.kr/f1072a98c98a404992c7700849705b0c 강의 듣기 전 작성해본 코드입니다. 위치랑 시간 업데이트 for문으로 상하좌우 탐색 이 때 push 시 시간도 같이 저장 시간이 바뀌면 불 업데이트 1~3번 반복 하는 도중 탈출 성공하면 return 코드 시행 시 메모리 초과가 나오는데 어디에서 초과가 되는지 모르겠습니다. 제 생각에는 아마 while 안의 push 부분에서 일어나는 것 같은데 pop을 해주는데도 메모리 초과가 일어날 수 있나요?
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
강사님 안녕하세요, 7-W 문제 조건 중에 최초 0,0 위치를 제외하고는 양발이 같은 위치에 있을 수 없다고 되어있는데요. 풀이를 보면 왼발을 움직인 경우/오른발을 움직인 경우 각각에 대해서 min 값을 취하긴 하지만, 위에 말씀드린 양발이 같은 위치에 있는 경우에 대해 배제하는 조건이 없는 것 같아서요. 현재 상태에 대한 발의 위치를 아래와 같이 나타낸다고 할 때, (왼발 위치, 오른발 위치) 현재 상태가 (1,2) 이고 다음 밟아야하는 위치가 1 이면 (1,2) 로 그대로 두거나, (1,x) 로 이동하는 경우만 있을 수 있는습니다. 하지만, 풀이의 solve 함수에서, v[target] = 1 이 되니까, int left 의 경우에는 이므로 (1,2) 그대로 있지만, int right 의 경우에는 (1,1) 에 대해 solve 함수가 호출되지 않을까 생각이 됩니다. 어쨋든 움직이지 않는 경우 (1,2) 가 노력이 덜 들어가므로 left 가 선택이 되었을 것으로 추측이 되지만, (1,1) 로 흘러들어간 DFS 가 이후에 어떤 값을 내보낼지 알수가 없을 것 같아서요 문제는 통과했지만, 양발이 같은 위치에 들어오는 경우는 배제해야하지 않을까요? 제 코드는 다음과 같습니다. http://boj.kr/8617c099286e4650b615631a7d5974cb
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/93b33cb812b94777862c0d948104ad7f 이 코드인데 왜 틀렸는지 도저히 모르겠습니다. ㅠㅠㅠ
미해결
[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
코틀린은 왜 이렇게까지 null 확인에 집착하는지 모르겠네요.. 왜 아래와 같이는 안 되나요? fun solution(list: ArrayList<Int>) : Int{ //val minimum:Int? = list!!.minOrNull() //이건 나오고 //val sum:Int? = list!!.sum() //이것도 나오는데 //val result:Int? = sum.toInt() - minimum.toInt() //이것은 안 나옵니다. return list!!.sum().toInt() - list!!.minOrNull().toInt() //이렇게도 안 나오네요.. ㄷㄷ }
미해결
[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
제 주력 언어는 파이썬인데, 코틀린을 배우는데... 코틀린은 파이썬과 다르게 기능이 별로 없네요. 알파벳 숫자 세는 것을 아래와 같이 하려고 하는데, value+=1이 안 됩니다. 어떻게 해야 하나요? fun solution( str : String ): Map<String, Int>{ var result = mutableMapOf<String,Int>() for (i in 0..str.length-1){ var currLetter = str[i].toString() //이 부분에서, 문자열을 인덱싱했으니 당연히 타입은 그대로일 줄 알았는데 Char()라고 합니다. ㄷㄷㄷㄷ 이건 왜 인가요? if (currLetter in result.keys){ result[currLetter] = 2 /// 제가 하고 싶은 것: result[currLetter] += 1 //전체적인 틀의 문제인가 싶어서, 강제로 2를 할당시켜봤더니 이 부분은 정상적으로 작동합니다. 그런데 1을 더하는 것이 안 되네요, 자바와 파이썬 모두 가능한 것으로 알고 있는데 왜 안 될까요? 인터넷 검색을 해봐도, 딱히 +=1이 되는 것 같지는 않네요. 자바처럼 Counter()를 써야 하나요? //혹시 몰라 아래와 같이 해보니까, 이것 또한 안 됩니다. //둘 모두 아래와 동일한 에러가 나옵니다. /* Operator call corresponds to a dot-qualified call 'result[currLetter].plus(1)' which is not allowed on a nullable receiver 'result[currLetter]'. */ //어떻게 해야 하나요??? temp = result[currLetter] result[currLetter] = temp +1 } else{ result[currLetter] =1 } } return result }
미해결
자바 코딩테스트 - it 대기업 유제
이렇게 작성하니까 배열 범위가 벗어낫다고 하는데, 어디가 벗어나는지 잘 모르겠습니다. import java.awt.List; import java.util.*; class Node implements Comparable<Node>{ int x; int y; int c; Node(int x, int y, int c){ this.x=x; this.y=y; this.c=c; } @Override public int compareTo(Node o) { return this.c - o.c; } } class Main { public static int n,m; public static int INF = (int)1e9; public static int[][] cost; public static int[] dx = {0,0,1,-1}; public static int[] dy = {1,-1,0,0}; public int solution(int[][] board, int[] s, int[] e){ int answer; int n = board.length; int m = board[0].length; cost = new int[n][m]; for(int i = 0; i < n; i++) Arrays.fill(cost[i],INF); answer = dij(s[0],s[1],board,e[0],e[1]); if(answer == INF) return -1; else return answer; } public static int dij(int s,int e, int [][]board, int e1, int e2) { PriorityQueue<Node> q = new PriorityQueue<>(); q.offer(new Node(s,e,0)); cost[s][e] = board[s][e]; while(!q.isEmpty()) { Node tmp = q.poll(); int nowx = tmp.x; int nowy = tmp.y; int nowcnt = tmp.c; if(nowcnt>cost[nowx][nowy]) continue; for(int i=0; i<4; i++) { int nx = nowx; int ny = nowy; int len =nowcnt; while(nx>=0 && ny>=0 && nx<n && ny<m && board[nx][ny]==0) { nx+=dx[i]; ny+=dy[i]; len++; } nx-=dx[i]; ny-=dy[i]; len--; if(cost[nx][ny]>len) { cost[nx][ny] = len; q.offer(new Node(nx,ny,cost[nx][ny])); } } } return cost[e1][e2]; } public static void main(String[] args){ Main T = new Main(); System.out.println(T.solution(new int[][]{{0, 0, 1, 0, 0, 0}, {0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 0}, {1, 0, 1, 1, 1, 0}, {1, 0, 0, 0, 0, 0}}, new int[]{1, 0}, new int[]{4, 5})); System.out.println(T.solution(new int[][]{{0, 0, 1, 0, 0, 0}, {0, 0, 1, 0, 0, 0}, {0, 0, 0, 0, 1, 0}, {1, 0, 1, 1, 1, 0}, {1, 0, 0, 0, 0, 0}}, new int[]{0, 0}, new int[]{4, 2})); System.out.println(T.solution(new int[][]{{1, 0, 1, 0, 0}, {0, 0, 0, 0, 0}, {0, 0, 0, 1, 0}, {1, 1, 0, 1, 1}, {0, 0, 0, 0, 0}}, new int[]{0, 3}, new int[]{4, 2})); System.out.println(T.solution(new int[][]{{0, 1, 0, 1, 0, 0}, {0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0}, {0, 1, 1, 0, 1, 1}, {0, 0, 0, 0, 0, 0}}, new int[]{0, 0}, new int[]{4, 5})); System.out.println(T.solution(new int[][]{{0, 0, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 0, 0, 0, 0}, {0, 1, 0, 0, 0, 0, 0, 0}, {0, 0, 0, 0, 1, 0, 0, 0}, {0, 0, 1, 0, 0, 0, 0, 0}}, new int[]{0, 0}, new int[]{4, 3})); } }
미해결
코딩테스트 실전 모의고사(with C++) : 대기업 대비
안녕하세요. 제목과 같은 #include<bits/stdc++.h> 이 헤더를 썼을때, visual studio 나 DevC++ 에서 실행이 되지 않고 있는데요. 해결 방법이 있나요? #include <iostream>을 사용해서 실행은 되고 있습니다. 그리고, 실제 코딩테스트에서는 제목의 헤더나 백터, 큐 같은 라이브러리 함수를 사용하지 못하도록 되어 있는데, 예를 들면 #include <stdio.h> 또는 #include <iostream> 이 두가지만 허용이 됩니다. 벡터, 큐, max, min, abs 등과 같이 직접 만들어야 하는 함수에 대해서 부가 설명이 있으면 좋을 것 같습니다. 그리고, ios ... 등등 이전 학습을 완료해야 알 수 있는 것들에 대해서도 물론 이 강의를 수강하는 정도의 레벨이라면 알고 있는 수강생들이 많겠지만, 짤막하게라도 설명이나 찾아볼 수 있는 곳이 있으면 좋겠습니다. (별도 네이버나 구글링을 통해서 찾아보려고 생각 중 입니다.) 저는 이전 강의를 미수강하고, 바로 이 과목을 선택 했거든요. 그리고, C언어에서는 안 돌아갔었던 것 같은데, 레인지 베이스드 포문도 C++에서만 되는 건지 궁금합니다. 감사합니다.
미해결
입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]
저는 이문제는 이렇게 해봤는데 영상에서는 포문이 두개 들어가더라구요 이 방식도 맞는지 한번 봐주실수 있을까요? def solution(nums): sortArr = sorted(nums) minVal = 1000 result = [] for i in range(len(sortArr)-1): subVal = sortArr[i + 1] - sortArr[i] minVal = min(subVal, minVal) list = [sortArr[i], sortArr[i+1]] if minVal == subVal: result.append(list) return result
미해결
입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]
정렬에 사탕종류 문제에서 정렬파트다보니 sort로 일부러 구현하신 것같긴한데 저는 봤을때 set 밖에 생각이 안났어서요 현재 주어진 케이스에는 정상적으로 나오는데 혹시 생각치 못한 케이스에 안될수도 있을까라는 생각에 올려봤습니다 이것도 맞는 경우인건가요? def solution(nums): size = len(nums) / 2 dist = len(set(nums)) if size > dist: return int(dist) else : return int(size) print(solution(nums))
미해결
코딩테스트 [ ALL IN ONE ]
안녕하세요 강의 너무 잘 듣고 있습니다. 다른 글에 5월-6월 초라고 하셨는데 남은 강의 언제쯤 업데이트 될까요?
미해결
[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
5:29분에서, enum class Color(val rgb: Int){ RED(0xFF0000), } 이런식으로 되어있잖아요. 그런데, when(color){ Color.RED->{ println(Color.RED.rgb) } 이렇게 해서 색깔들의 rgb 값을 가져오잖아요, 그런데 enum에서는 RED(0xFF0000) 이렇게 RED와 RGB 값이 같이 묶여서 있는데, 어떻게 Color.RED라고 인식하나요? 그리고 실제 콘솔 리턴값은 16711680이라고 나오나요??? 제가 자바는 오랫동안 써봤는데 사실 enum에서 rgb 값은 안 써봐서 모르겠습니다. 알려주세요, 감사합니다 }
미해결
[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
같은 class에서 fun prepareRequest():String ="기본 요청 url $url" 이렇게 리턴값의 타입을 String이라고 명시해주는 반면, fun query(request:String) ="결과 query $request" 이 함수는 왜 리턴값의 타입을 명시하지 않나요?
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
드래그해서 주석처리하는거 단축키가 뭔가요?
미해결
10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요! _map[b]++; 하게 되면 b에 입력된 값하고 인덱스번호가 자동으로 추가가 되는건가요? for(auto it : _map) cout << "first : " << it.first << " second : " << it.second << "\n"; 로 로그를 찍어봤는데 번호하고 값이 잘 나오기는 했습니다만 정확한 답변을 알고자 질문드렸습니다. 감사합니다!
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
변수 값 바꿀때 자바는 다른 변수 하나 더 필요한데 파이썬은 없어도 되나요?
미해결
[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법
고차함수는 함수를 인수로 받는 함수라고 이해했어요. 그런데, 7:43정도에 나오는 highPrintTest(::printTest) 에서 고차함수는 "결과 등을 리턴하는 함수"를 인수로 가지는 함수이기에, ::printTest 이 부분은 printTest함수의 결과값이 들어가야 하지 않나요? 그런데, 지금 printTest말고는 인수를 안 태웠기 때문에, printTest(str:String)함수에는 변수의 타입이 안 맞으니 못 들어가서 타입 에러가 나와야 하지 않나요?
미해결
it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
#include <stdio.h> #include <vector> using namespace std; int n, m; int answer = 0; void solution(vector<vector<int>> & arr, vector<int> & visited, int current){ if(current == n){ answer++; return; } visited[current - 1] = 1; for(int i=0;i<n;i++){ if(arr[current-1][i]!=0 && visited[i] == 0){ visited[i] = 1; solution(arr, visited, i+1); visited[i] = 0; } } visited[current - 1] = 0; } int main(void){ //freopen("input.txt", "rt", stdin); int start, end; scanf("%d %d", &n, &m); vector<vector<int>> arr(n, vector<int>(n)); vector<int> visited(n); for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ scanf("%d %d", &start, &end); arr[start-1][end-1] = 1; } } solution(arr, visited, 1); printf("%d", answer); return 0; } 안녕하세요. 다름이 아니라 수업 듣기 전 짠 코드를 이용해 채점 프로그램을 실행시키면 모든 case에 대해 time limit가 나와서 질문드립니다. 위 코드에 어떤 문제가 있을까요? 채점파일 내에 있는 input.txt 입력받고 실행시키면 전부 정답으로 나옵니다.