일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- database
- java
- Tree
- string
- SQL
- Binary Tree
- geometry
- array
- Matrix
- hash table
- greedy
- Stack
- Binary Search
- Method
- Math
- 코딩테스트
- two pointers
- 자바
- Data Structure
- implement
- Counting
- 파이썬
- sorting
- 코테
- bit manipulation
- Class
- simulation
- 구현
- Number Theory
- Today
- Total
목록자바 (584)
코린이의 소소한 공부노트

[애너테이션 타입 정의하기] 1. 애너테이션을 직접 만들어 쓸 수 있다. @interface 애너테이션이름{ 타입 요소이름(); // 애너테이션의 요소 선언 ... } 2. 애너테이션의 메서드는 추상 메서드이며, 구현할 필요가 없다. 3. 애너테이션을 적용할 때 모두 지정해야 한다.. 이름과 값을 다 지정하기 때문에 순서는 상관없다. @interface DateTime{ String yymmdd(); String hhmmss(); } @interface TestInfo { int count(); String testedBy(); String[] testTools(); TestType testType(); // enum TestType { FIRST, FINAL } DateTime testDate(); /..
1. Input 1) 순서대로 누를 번호가 담긴 배열 numbers 2) 왼손잡이인지 오른손잡이인 지를 나타내는 문자열 hand 3) 왼손, 오른손 엄지손가락만을 이용해서 숫자 입력 4) 키패드의 모양 1 2 3 4 5 6 7 8 9 * 0 # 5) 왼손 엄지는 *에서, 오른손 엄지는 #에서 시작 2. Output 1) 각 번호를 누른 엄지손가락이 왼손인 지 오른손인 지를 나타내는 연속된 문자열 2) 엄지손가락 사용 규칙 - 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당한다. - 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용한다. - 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용한다. - 가운데..

[애너테이션의 정의] 1. 애너테이션은 주석이라는 뜻 2. 우리가 일반적으로 사용하는 주석(/* */, //)처럼 프로그래밍 언어에 영향을 미치지 않는다. 3. 소스코드를 테스트하는 프로그램(JUnit)에게 유용한 정보를 제공한다. /** 컨테이너 애너테이션 ToDo[] value(); // @Todo타입의 배열 선언. 이름이 반드시 value여야 한다. } [쿠키글] 기타 애너테이션 1. @Native 1) navite 메서드에서 참조되는 상수 앞에 붙인다. @Native public static final long MIN_VALUE = 0x8000000000000000L; 2) JVM이 native 메서드(OS 메서드)를 잘 쓸 수 있게 해주는 것이 JNI(Java Native Interface, 다..
1. Input 1) 정수 배열 numbers 2. Output 1) numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 오름차순으로 담은 배열 3. Constraint 1) numbers의 길이는 2 이상 100 이하 2) numbers의 모든 수는 0 이상 100 이하 4. Example Input: numbers={2,1,3,4,1} -> Output: {2,3,4,5,6,7} 설명: 2 + 1 = 2 + 1 = 3 1 + 3 = 3 + 1 = 4 2 + 3 = 1 + 4 = 4 + 1 = 5 1 + 1 = 2 2 + 4 = 6 3 + 4 = 7 5. Code 1) 첫 코드(2022/??) import java.util.Arrays; int l = numb..
1. Input 1) 자연수 n 2. Output 1) n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수 3. Constraint 1) 1 =3) { reverse3 += "" + num%3; num /= 3; l++; } reverse3 += "" + num; l++; // 뒤집어신 3진법 수를 10진법으로 바꾸기 String[] digit_s = reverse3.split(""); int x=0; for(int i=0 ; i=1){ num += String.valueOf(n%3); n /= 3; } // n=0인 상태 for(int i=0 ; i
1. Input 1) 정수 배열 a 2) 정수 배열 b 2. Output 1) a와 b의 내적 결과 2) 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] (n은 a, b의 길이) 3. Constraint 1) a와 b의 길이는 같다. 2) a, b의 길이는 1 이상 1,000 이하 3) a, b의 모든 수는 -1,000 이상 1,000 이하 4. Example Input: a={1,0,1}, b={-1,0,1} -> Output: 0 설명: 1*(-1) + 0*0 + 1*1 = 0 5. Code 1) 첫 코드(2022/??) int answer = 0; for(int i=0 ; i

[열거형] 1. 관련된 상수들을 같이 묶어 놓는 것 2. 자바는 타입에 안전한 열거형을 제공한다. - 타입에 안전하다는 것은 값과 타입을 동시에 체크한다는 것을 말한다. // 열거형을 쓰지 않았을 때// 열거형을 쓸 때 class Card1{class Card2{ // 무늬 // 무늬 0 1 2 3 static final int CLOVER = 0; enum Kind { CLOVER, HEART, DIAMOND, SPADE } static final int HEART = 1 // 열거형 Kind 정의 static final int DIAMOND = 2; static final int SPADE = 3; // 숫자 // 숫자 0 1 2 static final int TWO = 0; enum Value { ..
1. Input 1) 신규 유저가 입력한 아이디가 new_id 2. Output 1) 아이디 규칙 7단계를 거친 후의 추천 id를 담은 String 변수 3. Constraint 1) new_id는 길이 1 이상 1,000 이하인 문자열 2) new_id는 알파벳 대문자, 알파벳 소문자, 숫자, 특수문자로 구성되어 있다. 3) new_id에 나타날 수 있는 특수문자는 -_.~!@#$%^&*()=+[{]}:?,/ 로 한정된다. 4) 아이디 규칙 7단계 1단계: new_id의 모든 대문자를 소문자로 치환 2단계: new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자 제거 3단계: new_id에서 마침표(.)가 2번 이상 연속된 부분을 하나의 마침표(.)로 치환 4단..
1. Input 1) 어떤 정수들의 절댓값을 차례대로 담은 int 배열 absolutes 2) 이 정수들의 부호를 차례대로 담은 boolean 배열 signs 3) signs[i]==true면 양수, false면 음수를 뜻함 2. Output 1) 실제 정수들의 합 3. Constraint 1) absolutes의 길이는 1 이상 1,000 이하 2) absolutes의 모든 수는 각각 1 이상 1,000 이하 3) signs의 길이는 absolutes의 길이와 같다. 4. Example Input: absolutes={4,7,12}, signs={true,false,ture} -> Output: 9 설명: 4 + (-7) + 12 = 9 5. Code 1) 첫 코드(2022/??) int answer ..
1. Input 1) 구매한 로또 번호를 담은 배열 lottos 2) 당첨 번호를 담은 배열 win_nums 2. Output 1) 당첨 가능한 최고 순위와 최저 순위를 차례대로 담은 배열 3. Constraint 1) lottos, win_nums는 길이가 6인 int 배열 2) lottos의 모든 원소는 0 이상 45 이하인 정수 3) 0은 알아볼 수 없는 숫자를 의미 4) win_nums의 모든 원소는 1 이상 45 이하인 정수 5) lottos에 중복 숫자는 0뿐이다. 6) win_nums에 중복되는 숫자는 없다. 7) lottos, win_nums의 원소들은 정렬되어 있지 않을 수도 있다. 4. Example Input: lottos={44, 1, 0, 0, 31, 25}, win_nums={3..