일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코딩테스트
- Binary Tree
- geometry
- dynamic programming
- string
- Binary Search
- SQL
- database
- Method
- Counting
- two pointers
- Matrix
- Number Theory
- simulation
- Tree
- 코테
- greedy
- Math
- bit manipulation
- sorting
- Stack
- 구현
- java
- Class
- Data Structure
- 파이썬
- 자바
- hash table
- implement
- array
- Today
- Total
목록Counting (35)
코린이의 소소한 공부노트
1. Input 1) int[] ranks - ranks[i]는 i번째 카드의 숫자를 뜻한다. 2) char[] suits - suits[i]는 i번째 카드의 무늬를 뜻한다. 2. Output 1) 갖고 있는 카드를 이용해서 아래 타입들을 만들어볼 때, 가장 높은 타입을 문자열로 반환 // 타입 - "Flush": 5장 모두 같은 무늬 - "Three of a Kind": 3장이 같은 숫자 - "Pair": 2장이 같은 무늬 - "High Card": 아무 카드 1장 3. Constraint 1) ranks.length == suits.length == 5 2) 1
1. Input 1) int[] nums 2. Output 1) nums에 아래 연산을 최대한 많이 수행한 후, 없앤 쌍의 개수와 nums에 남은 숫자의 개수를 차례대로 담은 배열 answer를 반환 // 연산 방법 - nums에서 같은 숫자 2개를 고른다. - 두 숫자 모두 num에서 없애고, 없앤 숫자는 쌍을 이룬다. 3. Constraint 1) 1
1. Input 1) String num 2. Output 1) [0, num.length)에 있는 모든 i에 대해서 i가 num[i]번 나타나면 true, 아니면 false를 반환 3. Constraint 1) 1 0이 1번 나타났나? -> O - 1번째 숫자: 2 -> 1이 2번 나타났나? -> O - 2번째 숫자: 1 -> 2가 1번 나타났나? -> O - 3번째 숫자: 0 -> 3이 0번 나타났나? -> O - 모든 경우가 맞으므로 true를 반환한다. 5. Code 1) 첫 코드(2022/08/04) int[] d = new int[num.length()]; for(int i=0 ; i=num.length()) return false; d[c]++; } for(int i=0 ; i
1. Input 1) 문자열 word1 2) 문자열 word2 2. Output 1) 두 문자열이 almost equivalent라면 true, 아니면 false // Almost Equivalent의 조건 - 두 문자열을 이루고 있는 각 문자들의 빈도 수의 차가 3 이하여야 한다. 3. Constraint 1) n == word1.length == word2.length 2) 1 4 - 0 > 3 이므로 false 5. Code 1) 첫 코드(2022/07/05) int[] n = new int[26]; for(int i=0 ; i
1. Input 1) 정수 배열 nums 2) 정수 k 2. Output 1) i
1. Input 1) 문자열 s 2. Output 1) s가 good string이라면 true를, 아니면 false를 반환 - good string이란 문자열에 있는 모든 문자들이 동일한 개수인 문자열을 말한다. 3. Constraint 1) 1 Output: false 5. Code 1) 첫 코드(2022/06/15) int[] count = new int[26]; for(int i=0 ; i
1. Input 1) 문자열 배열 words 2. Output 1) words[i]의 문자 중 하나를 words[j]의 임의의 위치에 껴넣는 작업을 반복했을 때, words에 있는 모든 문자열이 똑같아진다면 true를, 아니면 false를 반환 - i != j 3. Constraint 1) 1
1. Input 1) 문자열 s 2. Output 1) s의 substring 중 길이가 3인 good substring의 개수를 반환 - good string: 중복 문자가 없는 문자열 3. Constraint 1) 1
1. Input 1) 정수 lowLimit 2) 정수 highLimit - 각각의 숫자는 공에 적힌 번호이다. - 나는 현재 lowLimit번부터 highLimit번까지 적힌 공을 가지고 있다. 2. Output 1) 각 공에 적힌 숫자의 자릿수의 합에 해당하는 번호가 붙은 박스에 공을 분류해서 집어 넣을 때, 박스에 들어간 공의 수 중 가장 큰 수를 반환 - 박스 번호는 1부터 무한하다. 3. Constraint 1) 1 5번 박스에 1개 - 6번 -> 6 -> 6번 박스에 1개 - 7번 -> 7 -> 7번 박스에 1개 - 8번 -> 8 -> 8번 박스에 1개 - 9번 -> 9 -> 9번 박스에 1개 - 10번 -> 1+0=1 -> 1번 박스에 1개 - 11번 -> 1+1=2 -> 2번 박스에 1개 -..
1. Input 1) 문자열 s 2. Output 1) s를 반으로 나눴을 때, 나눈 두 문자열이 alike하면 true를, 다르면 false를 반환 - 문자열이 alike하다는 것은 각 문자열에 있는 모음의 수가 같다는 것을 의미한다. 3. Constraint 1) 2 Output: false (text / book) 5. Code 1) 첫 코드(2022/06/10) s = s.toLowerCase(); int count = 0; // a의 모음 개수 세기 for(int i=0 ; i