일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Data Structure
- geometry
- two pointers
- string
- 구현
- database
- Number Theory
- Stack
- dynamic programming
- Matrix
- Math
- greedy
- 자바
- Binary Search
- Counting
- 코딩테스트
- bit manipulation
- SQL
- java
- 코테
- hash table
- implement
- simulation
- 파이썬
- Binary Tree
- Method
- Class
- array
- sorting
- Tree
- Today
- Total
목록코딩테스트 풀이/JAVA (963)
코린이의 소소한 공부노트
- N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. - 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 1. 입력 - 첫째 줄에 정수 N(1 ≤ N ≤ 500,000)이 주어진다. 2. 출력 - 첫째 줄에 남게 되는 카드의 번호를 출력한다. 3. 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { Bu..
정수를 저장하는 큐를 구현하고, 다음 여섯가지 명령이 입력으로 주어진다. - push X: 정수 X를 큐에 넣는 연산이다. - pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. - size: 큐에 들어있는 정수의 개수를 출력한다. - empty: 큐가 비어있으면 1, 아니면 0을 출력한다. - front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. - back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. 1. 입력 - 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. - 둘째 줄부터 N개의..
문자열이 균형을 이루려면 다음 조건을 만족해야 한다. - 모든 왼쪽 소괄호("(")는 오른쪽 소괄호(")")와만 짝을 이뤄야 한다. - 모든 왼쪽 대괄호("[")는 오른쪽 대괄호("]")와만 짝을 이뤄야 한다. - 모든 오른쪽 괄호들은 자신과 짝을 이룰 수 있는 왼쪽 괄호가 존재한다. - 모든 괄호들의 짝은 1:1 매칭만 가능하다. 즉, 괄호 하나가 둘 이상의 괄호와 짝지어지지 않는다. - 짝을 이루는 두 괄호가 있을 때, 그 사이에 있는 문자열도 균형이 잡혀야 한다. 1. 입력 - 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. - 입력의 종료조건으로 맨 마지막에 온점 하..
1. 입력 - 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 주어진다. - 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 괄호 문자열이 한 줄에 주어진다. 하나의 괄호 문자열의 길이는 2 이상 50 이하이다. 2. 출력 - 출력은 표준 출력을 사용한다. 만일 입력 괄호 문자열이 올바른 괄호 문자열(VPS)이면 “YES”, 아니면 “NO”를 한 줄에 하나씩 차례대로 출력해야 한다. 3. 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br = ne..
1. 입력 - 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) - 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경우 해당 수를 쓴다. - 정수가 "0"일 경우에 지울 수 있는 수가 있음을 보장할 수 있다. 2. 출력 - 재민이가 최종적으로 적어 낸 수의 합을 출력한다. 최종적으로 적어낸 수의 합은 231-1보다 작거나 같은 정수이다. 3. 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br ..
정수를 저장하는 스택을 구현하고 다음 5가지 명령이 주어진다. - push X: 정수 X를 스택에 넣는 연산이다. - pop: 스택에서 가장 위에 있는 정수를 빼고, 그 수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. - size: 스택에 들어있는 정수의 개수를 출력한다. - empty: 스택이 비어있으면 1, 아니면 0을 출력한다. - top: 스택의 가장 위에 있는 정수를 출력한다. 만약 스택에 들어있는 정수가 없는 경우에는 -1을 출력한다. 1. 입력 - 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. - 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. - 문제에 나와있..
댄스 대회에 총총이가 출전하게 되었다. 총총이는 무지개 댄스를 춘다. 무지개 댄스를 추지 않고 있던 사람이 무지개 댄스를 추고 있던 사람을 만나게 된다면, 만난 시점 이후로 무지개 댄스를 추게 된다. 기록이 시작되기 이전 무지개 댄스를 추고 있는 사람은 총총이 뿐이다. 1. 입력 - 첫번째 줄에는 사람들이 만난 기록의 수 N(1
오픈 채팅방에 새로운 사람이 들어오면 곰곰티콘으로 인사한다. 채팅방에 있는 사람들은 새로운 사람이 입장한 후 처음 채팅은 반드시 곰곰티콘이다. 그 외의 기록은 채팅을 친 사람의 닉네임이다. 1. 입력 - 첫 번째 줄에는 채팅방의 기록 수를 나타내는 정수 N이 주어진다. (1
1. 입력 - 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. - 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다. - N의 진짜 약수란 N의 약수들 중에서 1과 N을 뺀 나머지 약수를 말한다. 2. 출력 - 첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다. 3. 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStre..
1. 입력 - 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. - 그 다음 줄부터 각각의 테스트케이스에 대해 강의 서쪽과 동쪽에 있는 사이트의 개수 정수 N, M (0 < N ≤ M < 30)이 주어진다. 2. 출력 - 각 테스트 케이스에 대해 주어진 조건하에 다리를 지을 수 있는 경우의 수를 출력한다. - 조건: 서쪽의 사이트와 동쪽의 사이트를 연결할 다리 N개를 짓는데, 다리끼리 겹칠 수는 없다. 3. 코드 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStr..