월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
이거는 왜 오답인가요? 1-1;
import java.util.Scanner; public class Main1_1 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next().toUpperCase(); char c = str.charAt(0); System.out.println(c); int answer = 0; for(int i=0; i <str.length(); i++) { if( str.charAt(i) == c) { answer++; } } System.out.println(answer); } }테스트는 잘되는데 왜오답인지모르겠습니다
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
토마토 문제 질문
강사님 안녕하세요! 토마토 문제 강의 듣다가 질문이 있어서 문의 드립니다.강의 내용 9:56 부분에서dis 부분에 (2,4) 부분이 3 이 아니라2가 되어야 하지 않나 싶어서 질문드립니다!이유는 level 1 - (2,5)에서 level 2가 될때 (2,4)가 2일 차에 토마토가 익어서 그렇게 될거 같은데,제가 이해를 잘못하고 있는 것인지 알 수 있을까요?
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
미로탐색 질문있습니다
이런식으로 왔던길을 되돌아가는 것을 제외하지 않으면 경우의 수가 8가지 이상이 되는데 조건부족아닌가요??
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
연속수열에 음수가 포함되는 경우
연속부분수열에서 음수인 수도 포함되는 경우, lt와 rt 사이의 길이가 길어질수록 합이 반드시 커진다는 명제가 성립되지 않아서 two pointer를 사용하는 sliding window 해결방법을 사용할 수 없는 것 같습니다. 이런 경우에는 어떻게 접근해야할까요?
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
무엇이 오답인지 모르겠습니다...
예시 입력 이 외 다른 값으로 입력해도 올바른 값이 나오는데 오답이 나오는 이유가 무엇일까요...? public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[][] arr = new int[n][5]; for (int i = 0; i < n; i++) { for (int t = 0; t < 5; t++) { arr[i][t] = in.nextInt(); } } int[] result = new int[n]; for (int i = 0; i < n; i++) { for (int t = 0; t < 5; t++) { for (int j = 0; j < n; j++) { if (i == j) continue; if (arr[i][t] == arr[j][t]) { result[i]++; break; } } } } int max_index = 0; for (int i = 0; i < result.length; i++) { if (result[i] > result[max_index]) { max_index = i; } } System.out.print(max_index + 1); } 예시 입력을 넣으면5 2 3 1 7 3 4 1 9 6 8 5 5 2 4 4 6 5 2 6 7 8 4 2 2 2 학생 순서대로 학년마다 같은 반 이였던 적이 있는 학생이면 +1을 해서 result 배열에 넣어주었습니다.[0, 1, 2, 3, 1] 마지막으로 result 배열 안에 가장 큰 수를 가진 인덱스에 +1을 해서 출력했습니다. 4
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
문제를 풀어보고 강의를 다보고나서 바로 백준으로 가도 될까요??
안녕하세요.강사님 덕분에 무사히 강의 완주를 할 수 있었고, 문제 유형에 따라 풀어보면서 알고리즘 개념을 익힌 것 같습니다. 다름이 아닌 앞으로의 공부 방향성에 대해 여쭤볼게 있습니다.이 강의를 완주하고 나서 바로 백준 사이트에서 문제를 풀지 아니면 이 강의에서 푼 문제들 중에 틀린 문제만 다시 풀어볼지 고민입니다.선택의 가이드를 주시면 감사하겠습니다.아래 사이트는 제가 문제를 풀면서 틀린 문제들을 정리한 개인 노트입니다.https://stirring-zone-39a.notion.site/000a85a88dc64def8241b7fa5baff59b
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
왜 틀렸는지 이유를 잘 모르겠습니다..
import java.util.Scanner; public class Main { public static void main(String[] args) { Main main = new Main(); Scanner sc = new Scanner(System.in); String s = sc.next(); String solution = main.solution(s); System.out.println(solution); } public String solution(String str) { String answer = ""; char[] chArr = str.toCharArray(); if (chArr.length % 2 == 1) { return answer = "NO"; } int lt = 0; int rt = chArr.length - 1; while (lt < rt) { char startWord = Character.toUpperCase(chArr[lt]); char lastWord = Character.toUpperCase(chArr[rt]); if (!(startWord == lastWord)) { return answer = "NO"; } lt++; rt--; } return answer = "YES"; } }
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
런타임 에러 질문 드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요,12번 테스트 2,3,4,5 번에서 런타임 에러가 나는데 테스트 케이스가 어떤 것인지 알려주실 수 있을까요...?그리고 아래와 같이 풀었봤는데무엇이 문제일까요? import java.util.ArrayList; import java.util.Scanner; public class Main { public String solution(int n, String str) { String answer = ""; str = str.replace("#", "1"); str = str.replace("*", "0"); ArrayList<String> arrStr = new ArrayList<String>(); for(int i=0; i<n; i++) { String tmp = str.substring(0, 7); arrStr.add(String.valueOf((char)Integer.parseInt(tmp, 2))); str = str.substring(7); } answer = String.join("", arrStr); return answer; } public static void main(String[] args) throws Exception { Main T = new Main(); Scanner kb = new Scanner(System.in); int n = kb.nextInt(); String str = kb.next(); System.out.println(T.solution(n, str)); } }
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
1-5번 문제 질문 올립니다
안녕하세요. 문자 뒤집기 문제에서해당 내용과 같이 코드를 작성 했는데답은 똑같이 출력이 되는데 채점에서 오답인이유가 무엇일까요 ?import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); System.out.println(solution(s)); } //a#b!GE*T@S //S#T!EG*b@a public static String solution(String s){ char[] c = s.toCharArray(); for (int i=0; i < c.length / 2 ; i++){ if(Character.isAlphabetic(c[i]) && Character.isAlphabetic(c[c.length-i-1])){ char tmp = c[i]; c[i] = c[c.length-i -1]; c[c.length-i -1] = tmp; } } return String.valueOf(c); } }
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
메모이제이션 리턴값 질문입니다.
DFS 함수에서 n이 2보다 클 경우 fibo[n]=DFS(n-2)+DFS(n-1) 이렇게 출력을 하고있는데 여기서 n이 1, 2 일 경우 fibo[n]=1; 으로 저장만 하고 있는데 어떻게 두 값이 더해져서 리턴을 하게 되는지 궁금합니다. fibo 배열에 저장이 될 때 자동으로 그 값이 반환되는 건가요??알려주심 감사하겠습니다.!
- 해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
최대매출 왜 오답일까요?
public class Main { public int solution(int input1, int input2, int[] arr){ int max = 0; for(int i=0; i<=input1-input2; i++){ max = Math.max(max,arr[i]+arr[i+1]+arr[i+2]); } return max; } public static void main(String[] args){ Scanner sc=new Scanner(System.in); int input1 = sc.nextInt(); int input2 = sc.nextInt(); int[] arr = new int[input1]; for(int i=0; i<input1; i++){ arr[i] = sc.nextInt(); } Main T = new Main(); System.out.println(T.solution(input1, input2, arr)); return ; } } 슬라이딩 윈도우로 풀기 전에 위와같이... 완전탐색(?)형식으로 풀었는데 오답인 이유는 뭔가요?!! 시간초과인가요...?? for문 하나니까 시간복잡도 N 아닌가요 ㅜㅜ
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
시작시간을 기준으로 해도 답이 나오는데 괜찮나요?
전 문제와 비슷하게 시작시간을 내림차순으로 정렬하고,아래와 같이 로직을 짰는데 정답 처리가 되었습니다.제가 푼 방법이 문제를 이해한 것이 맞을까요?import java.util.*; import java.io.*; class Conf implements Comparable<Conf> { int st; int et; public Conf(int st, int et) { this.st = st; this.et = et; } @Override public int compareTo(Conf o) { return o.st - this.st; } } class Main { public static int solution(int n, ArrayList<Conf> list) { int answer = 0; int min = Integer.MAX_VALUE; //st Collections.sort(list); for (Conf conf : list) { if (conf.et <= min) { min = conf.st; answer++; } } return answer; } public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer stz = null; int n = Integer.parseInt(br.readLine()); ArrayList<Conf> list = new ArrayList<>(); for (int i = 0; i < n; i++) { stz = new StringTokenizer(br.readLine()); int st = Integer.parseInt(stz.nextToken()); int et = Integer.parseInt(stz.nextToken()); list.add(new Conf(st, et)); } System.out.println(solution(n, list)); } }
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
어디가 다른 부분인지 모르겠습니다.
import java.util.Arrays; import java.util.Scanner; public class Main { static int n; static int f; static int[] b; static int[] p; static int[] ch; static boolean find = false; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); n = scanner.nextInt(); f = scanner.nextInt(); b = new int[n]; p = new int[n]; ch = new int[n + 1]; for (int i = 0; i < n; i++) { b[i] = memoizationFactorial(n - 1, i); } solution(0, 0); } public static void solution(int level, int sum) { if (find) { return; } if (level == n) { if (sum == f) { for (int i : p) { System.out.print(i + " "); } } find = true; } else { for (int i = 1; i <= n; i++) { if (ch[i] == 0) { ch[i] = 1; p[level] = i; solution(level + 1, sum + (p[level] * b[level])); ch[i] = 0; } } } } static int[][] memorize = new int[35][35]; private static int memoizationFactorial(int n, int c) { if (memorize[n][c] > 0) { return memorize[n][c]; } if (n == c || c == 0) { return 1; } else { return memorize[n][c] = memoizationFactorial(n - 1, c) + memoizationFactorial(n - 1, c - 1); } } }제가 푼 방식으로는 안풀려서 선생님 코드를 그대로 썼는데 어디가 누락됬는지 모르겠습니다. ㅠㅠ
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
k번째 큰 수 문제에서 부분 수열의 합 처럼 풀어도 되나요?
안녕하세요!저는 이 문제에서 부분 수열의 합을 떠올려서 풀었는데요!이렇게 풀면 3중 for문의 비해 효율성이 떨어지나요?이렇게 풀어도 괜찮은지 질문 남김니다.package algorithmStudy; import java.util.*; public class Problem4_5 { static int n; static int k; static int[] arr; static Set<Integer> answerSet; public static void main(String[] args) { Scanner scan = new Scanner(System.in); n= scan.nextInt(); k= scan.nextInt(); arr= new int[n]; for(int i=0;i<n;i++){ arr[i] = scan.nextInt(); } solution(n,k,arr); } private static void solution(int n, int k, int[] arr) { answerSet = new HashSet<>(); DFS(0,0, 0); ArrayList<Integer>answer = new ArrayList<>(answerSet); // System.out.println(answer); if(answer.size()>k) { Collections.sort(answer,Comparator.reverseOrder()); System.out.println(answer.get(k-1)); }else System.out.println(-1); } private static void DFS(int i, int j, int sum) { if(j==3) { answerSet.add(sum); return; } if(i == n){ return; } DFS(i+1, j+1, sum+arr[i]); DFS(i+1, j, sum); } }
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
6-3. 삽입 정렬
public int[] solution(int[] arr) { for (int i = 1; i < arr.length; i++) { int tmp = arr[i], j; for (j = i - 1; j >= 0; j--) { if(arr[j] > tmp) { arr[j+1] = arr[j]; } else { break; } } arr[j+1] = tmp; } return arr; }안녕하세요 선생님 위 반복문 if절에서 arr[j+1]=arr[j]대신 arr[i] = arr[j]로 주면 안 되는 이유가 뭔지 알 수 있을까요?혼자서 이해해보려다 살짝 어려워서 질문드려요ㅠㅠ
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
미로탐색 dx dy 질문입니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.dx dy가 -1 0 1 0 정해졌는데 이 설명이 9시 3시 6시 그러시는데.... 이해가 잘 안됩니다dx dy기준 -1,0이 12시라고 그러시는데x좌표가 -1 y좌표가 0이면 9시 아닌가요??어떤 방향인지 이해가 안됩니다
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
DFS바둑이
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.바둑이 승차 문제 질문있습니다DFS함수 내 else구문에서DFS(L+1, sum, arr); 의 역할과 arr은 무엇인가요?sum에 arr[L] 바둑이 더하는거까지 이해했는데마지막 3번쨰 요소 arr이 뭔지 모르겠습니다
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
m 값을 MIN_VALUE로 설정하는 이유가 뭔가요?
그냥 0으로 설정하면 안되는걸까요?! 미니멈 벨류로 한 특별한 이유가 있는건지 궁금합니다
- 해결됨자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
[1단원 12번] nextLine()을 쓰면 왜 오류가 날까요?
main메소드에서 입력을 nextLine을 이용해서 받으려고 했습니다 public static void main(String[] args){ Scanner sc=new Scanner(System.in); int k = sc.nextInt(); String input = sc.nextLine(); Main T = new Main(); System.out.print(T.solution(k,input)); return ; }그런데 k 입력후 input을 입력 받기도 전에 다음오류가 뜨네요Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 7 next()와 nextLine()의 차이는 개행문자로 알고있는데..... 그게 이 문제에서 어떻게 영향을 끼치는건가요?ㅠㅠ
- 미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
안녕하세요 테스트케이스 관련 문의드립니다.
씨름선수 문제에서 이중반복문으로 제일 처음 문제풀이를 했는데 정답으로 떴습니다. 다른 수강생분들 게시글을 찾다가 저랑 동일한 경우를 발견했습니다!! 답글에 테스트케이스 수정해놓겠다고 하셨는데.. 혹시 수정했는데도 저와 같은 경우가 또 생길까봐 글 올립니다!!class Participant{ int weight; int height; public Participant(int height, int weight){ this.height = height; this.weight = weight; } } public class Code05 { public static ArrayList<Participant> list; public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); list = new ArrayList<>(); for(int i=0; i<n; i++){ int height = sc.nextInt(); int weight = sc.nextInt(); list.add(new Participant(height, weight)); } System.out.println(solution()); } public static int solution(){ boolean flag = false; int remove = 0; for(int i=0; i<list.size(); i++){ Participant comp = list.get(i); for(int j=0; j<list.size(); j++){ if(i==j) continue; if((comp.weight < list.get(j).weight) && (comp.height < list.get(j).height)) flag = true; } if(flag) { remove++; flag = false; } } return list.size() - remove; } }