일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- dynamic programming
- hash table
- array
- sorting
- bit manipulation
- 구현
- Class
- Number Theory
- 코딩테스트
- two pointers
- string
- SQL
- database
- 코테
- java
- Matrix
- 파이썬
- Stack
- Counting
- simulation
- Tree
- implement
- Data Structure
- geometry
- 자바
- Math
- Method
- Binary Tree
- Binary Search
- greedy
- Today
- Total
목록자바 (584)
코린이의 소소한 공부노트
1. Input 1) 정수 배열 arr 2. Output 1) arr의 평균값을 담은 double 변수 3. Constraint 1) arr의 길이는 1 이상, 100 이하 2) arr의 원소는 -10,000 이상 10,000 이하인 정수 4. Example Input: arr={1,2,3,4} -> Output: 2.5 5. Code 1) 첫 코드(2022/??) double answer = arr[0]; int n = arr.length; for(int i=1 ; i
1. Input 1) 자연수 x 2. Output 1) x가 하샤드 수이면 true, 아니면 false 반환 2) x의 자릿수의 합으로 x가 나누어떨어질 때 x는 하샤드 수이다. 3. Constraint 1) x는 1 이상 10,000 이하 4. Example Input: x=11 -> Output: false Input: x=12 -> Output: true 설명: - 11은 (1+1=)2로 나누어 떨어지지 않는다. - 12는 (1+2=)3으로 나누어 떨어진다. 5. Code 1) 첫 코드(2022/??) int sum=0, num=x; boolean answer = true; // 한 자리수는 무조건 하샤드 수 if(num>=10){ // 두 자리수부터 확인 while(true){ sum += num..
1. Input 1) 문자열로 저장된 전화번호 phone_number 2. Output 1) 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열 3. Constraint 1) phone_number의 길이는 4 이상 20이하 4. Example Input: phone_number=“01033334444” -> Output: “*******4444” 5. Code 1) 첫 코드(2022/??) char[] answer = phone_number.toCharArray(); for(int i=0 ; i
1. Input 1) int 행렬 arr1 2) int 행렬 arr2 2. Output 1) arr1과 arr2의 덧셈 결과 3. Constraint 1) 두 행렬의 행과 열의 길이는 500을 넘지 않는다. 2) 두 행렬의 크기는 같다. 4. Example Input: arr1={{1,2},{2,3}}, arr2={{3,4},{5,6}} -> Output: {{4,6}.{7,9}} 설명: { {1+3, 2+4}, = { {4, 6}, {2+5, 3+6}} {7, 9}} 5. Code 1) 첫 코드(2022/??) int row = arr1.length; int col = arr1[0].length; int[][] answer = new int[row][col]; for(int i=0 ; i
1. Input 1) 정수 x 2) 자연수 n 2. Output 1) x부터 시작해 x씩 증가하는 숫자를 n개 지니는 long타입 배열 3. Constraint 1) x는 -10,000,000 이상, 10,000,000 이하인 정수 2) n은 1,000 이하인 자연수 4. Example Input: x=2, n=5 -> Output: {2,4,6,8,10} 5. Code 1) 첫 코드(2022/??) long[] answer = new long[n]; for(int i=0 ; i
1. Input 1) 정수 n 2) 정수 m 2. Output 1) 별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태를 출력 3. Constraint 1) 1
1. Input 1) 숫자들이 들어있는 배열 nums 2. Output 1) nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 수 2) 소수는 약수의 개수가 2개인 자연수 3. Constraint 1) nums에 들어있는 숫자의 개수는 3개 이상 50개 이하 2) nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않다. 4. Example Input: nums={1,2,7,6,4} -> Output: 4 설명: 1 + 2 + 4 = 7 1 + 4 + 6 = 11 2 + 4 + 7 = 13 4 + 6 + 7 = 17 나머지 경우는 모두 소수가 아니다. 5. Code 1) 첫 코드(2022/??) int answer = 0; int sum = ..
1. Input 1) 지도의 한 변 크기 n 2) 정수 배열 arr1 3) 정수 배열 arr2 4) 지도는 한 변의 길이가 n인 정사각형 배열 형태 5) 각 칸은 "공백"(" ") 또는 "벽"("#")이다. 2. Output 1) 비밀지도의 암호를 해독한 결과를 담은 “#”과 “ ”로 이루어진 문자열 배열 2) 지도1(arr1)과 지도2(arr2)를 겹쳐 전체 지도를 완성한다. 두 지도 중 하나라도 벽인 부분은 전체 지도에서 벽이고, 두 지도 모두 공백인 부분은 전체 지도에서도 공백이다. 3) 두 지도는 정수로 암호화되어있으며, 그 암호를 이진수로 바꿨을 때 각 가로줄에서 벽 부분이 1, 공백 부분이 0이다. 3. Constraint 1) 1 ≦ n ≦ 16 2) arr1, arr2는 길이 n인 정수 배..
1. Input 1) 정수 배열 array 2) [i, j, k]를 원소로 가진 2차원 배열 commands 2. Output 1) array의 i번째 숫자부터 j번째까지 자르고 정렬했을 때 k번째 수를 담은 배열 3. Constraint 1) array의 길이는 1 이상 100 이하 2) array의 각 원소는 1 이상 100 이하 3) commands의 길이는 1 이상 50 이하 4) commands의 각 원소의 길이는 3 4. Example Input: array={1,5,2,6,3,7,4}, commands={{2,5,3},{4,4,1},{1,7,3}} -> Output: {5,6,3} 설명: - array의 2번째~5번째는 {5,2,6,3}이고, 정렬하면 {2,3,5,6}이므로 3번째 숫자는 5..
1. Input 1) 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers 2) 수포자는 3명이 있다. 3) 수포자들이 번호를 찍은 방식 1번 수포자: 1, 2, 3, 4, 5 반복 2번 수포자: 2, 1, 2, 3, 2, 4, 2, 5 반복 3번 수포자: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 반복 2. Output 1) 세 명 중 가장 많은 문제를 맞힌 사람의 번호를 담은 정수 배열 3. Constraint 1) 시험은 최대 10,000 문제 2) 문제의 정답은 1, 2, 3, 4, 5중 하나 3) 가장 높은 점수를 받은 사람이 여럿일 경우, 반환하는 값을 오름차순으로 정렬 후 반환 4. Example Input: answers={1,3,2,4,2} -> Output:..