일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- bit manipulation
- string
- dynamic programming
- database
- 구현
- java
- Method
- simulation
- two pointers
- Data Structure
- array
- SQL
- Binary Tree
- 코딩테스트
- Binary Search
- Tree
- 파이썬
- geometry
- Counting
- greedy
- 자바
- Matrix
- implement
- Stack
- Number Theory
- sorting
- Class
- hash table
- Math
- 코테
- Today
- Total
목록코딩테스트 (116)
코린이의 소소한 공부노트
1. Input 1) 문자열 s 2. Output 1) s의 가운데 글자를 담은 문자열 2) s의 길이가 짝수라면 가운데 두 글자를 반환 3. Constraint 1) s는 길이가 1 이상 100 이하인 문자열 4. Example Input: s=“abc” -> Output: “b” Input: s=“abcd” -> Output: “bc” 5. Code 1) 첫 코드(2022/??) String answer = ""; int l = s.length(); if (l%2 == 0) return s.substring(l/2-1,l/2+1); else return "" + s.charAt(l/2); 2) 다시 풀어본 코드(2022/11/26) if(s.length()%2==1) s = s.substring(s...
1. Input 1) int 배열 arr 2) 자연수 divisor 2. Output 1) arr의 요소들 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열 2) divisor로 나누어 떨어지는 요소가 없다면 배열에 –1을 담아 반환 3. Constraint 1) arr은 자연수를 담은 배열 2) arr에 중복되는 숫자는 없음 3) divisor는 자연수 4) arr은 길이 1 이상인 배열 4. Example Input: arr={10,9,7,5}, divisor=5 -> Output: {5,10} Input: arr={3,2,5}, divisor=10 -> Output: {-1} 5. Code 1) 첫 코드(2022/??) import java.util.Arrays; int[] answ..
1. Input 1) 정수 a 2) 정수 b 2. Output 1) a와 b 사이에 있는 모든 정수의 합 3. Constraint 1) a와 b가 같은 경우는 둘 중 아무 수나 반환 2) a와 b는 -10,000,000 이상 10,000,000 이하인 정수 3) a와 b의 대소관계는 정해져있지 않다. 4. Example Input: a=5, b=3 -> Output: 12 설명: 5 + 4 + 3 = 12 5. Code 1) 첫 코드(2022/??) long answer = 0; if(a == b) return a; else return (long)(Math.abs(a-b)+1) * (long)(a+b) / 2; 2) return문 1개로 변경(2022/11/26) return (long)(Math.ab..
1. Input 1) 대문자와 소문자가 섞여있는 문자열 s 2. Output 1) s에 'p'의 개수와 'y'의 개수를 비교해 같으면 true, 다르면 false를 반환 3. Constraint 1) 'p', 'y' 모두 하나도 없는 경우는 true 반환 2) 개수를 비교할 때 대소문자를 구별하지 않는다. 3) 문자열 s의 길이 : 50 이하의 자연수 4) s는 알파벳으로만 이루어져 있다. 4. Example Input: s=“pPoooyY” -> Output: true Input: s=“pyy” -> Output: false 5. Code 1) 첫 코드(2022/??) s = s.toLowerCase(); int p=0, y=0; for(int i=0 ; i
1. Input 1) 문자열 s 2. Output 1) s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로 만든 문자열 3. Constraint 1) s은 길이 1 이상인 문자열 2) s는 영문 대소문자로만 구성되어 있다. 3) 대문자는 소문자보다 작은 것으로 간주한다. 4. Example Input: s="Zbcdefg" -> Output: "gfedcbZ" 5. Code 1) 첫 코드(2022/??) import java.util.Arrays; String answer = ""; int[] n = new int[s.length()]; for(int i=0 ; i=0 ; i--) answer += (char)n[i] + ""; return answer; 2) 다시 풀어본 코드(2022/11/25) ..
1. Input 1) 문자열 s 2. Output 1) s의 길이가 4 혹은 6이고, 숫자로만 구성되어 있다면 true, 그렇지 않다면 false 반환 3. Constraint 1) s는 길이 1 이상 8 이하인 문자열 2) s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있다. 4. Example Input: s=“a234” -> Output: false Input: s=“1234” -> Output: true 5. Code 1) 첫 코드(2022/??) if(s.length() == 4 || s.length() == 6) // 길이 만족 return s.matches("[0-9]{4}") || s.matches("[0-9]{6}"); return false; 2) return문이 여러 ..
1. Input 1) String형 배열 seoul 2. Output 1) “Kim”의 위치 x를 찾아 "김서방은 x에 있다"를 담은 문자열 3. Constraint 1) seoul은 길이 1 이상, 1000 이하인 배열 2) seoul의 원소는 길이 1 이상, 20 이하인 문자열 3) "Kim"은 반드시 seoul 안에 포함되어 있다. 4. Example Input: seoul={“Jane”, “Kim”} -> Output: “김서방은 1에 있다” 5. Code 1) 첫 코드(2022/??) int location = 0; for(int i=0 ; i
1. Input 1) 자연수 n 2. Output 1) 길이가 n인 “수박수박..” 패턴을 유지하는 문자열 3. Constraint 1) n은 10,000 이하의 자연수 4. Example Input: n=3 -> Output: “수박수” Input: n=4 -> Output: “수박수박” 5. Code 1) 첫 코드(2022/??) String answer = ""; if(n%2 == 0) for(int i=0 ; i
1. Input 1) 정수 num 2. Output 1) num이 짝수라면 “Even”, 홀수라면 “Odd”를 반환 3. Constraint 1) num은 int 범위의 정수 2) 0은 짝수 4. Example Input: num=3 -> Output: “Odd” 5. Code 1) 첫 코드(2022/??) String answer = "Even"; if(Math.abs(num%2) == 1) answer = "Odd"; return answer; 2) 간결하게 바꾼 코드(2022/11/24) return Math.abs(num%2) == 1 ? "Odd" : "Even";
1. Input 1) 자연수를 담은 배열 arr 2. Output 1) arr에 담긴 모든 숫자들의 최소공배수 3. Constraint 1) arr의 길이는 1 이상 15 이하 2) arr의 원소는 100 이하인 자연수 4. Example Input: arr={2,6,8,14} -> Output: 168 5. Code 1) 첫 코드(2022/??) int lcd = 0; for(int i=0 ; i1 ; i--) if(big%i==0 && small%i==0) return i; return 1; // 서로소 } 2) 추가 메서드 없이 답을 구할 수 있게 바꾼 코드(2022/11/23) for(int i=0 ; i=1 ; j--) // big이 small의 배수가 아닐 경우 if(big%j==0 && sm..