https://www.acmicpc.net/problem/12739 12739번: 돌림판 (Small) 지훈이는 경품 이벤트를 진행하기 위해서 원형판이 N등분 되어 있고, 각 N등분된 곳에 빨간색 또는 초록색 또는 파란색이 색칠되어 있는 돌림판을 준비하였다. 이 이벤트의 룰은 간단하다. 이벤 www.acmicpc.net 풀이 1) 돌림판의 색을 저장할 board[] 배열과 swap을 위한 temp[] 배열을 생성한다. 2) K번 반복하는 반복문 생성. (색을 바꾸는 횟수) 3) N번 반복하는 반복문 생성. (돌림판이 나누어진 수) 4) 주어진 규칙에 따라 해당 색을 어떤 색으로 바꿀지 판단한다. 4-1) 이전-현재-다음 의 색상이 모두 동일할 경우 현재 색을 파란색으로 바꾼다. 4-2) 아닐경우, 빨강 ..
https://www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 풀이 0) 컨베이어 벨트를 나타낼 이차원 배열 belt[][2]를 선언한다. belt[i][0]은 내구도, belt[i][1] 로봇의 유무를 나타낸다. 1) 한칸씩 이동 2) belt를 temp로 초기화 3) 로봇이 내리는 위치에 닿으면 빼야함 4) 로봇은 한칸 더 이동 5) 이동한 로봇이 내리는 위치이면 빼야함 6) 새로운 로봇을 올림 7) 내구도 검사 8) 1~7까지 반복..
https://www.acmicpc.net/problem/13335 13335번: 트럭 입력 데이터는 표준입력을 사용한다. 입력은 두 줄로 이루어진다. 입력의 첫 번째 줄에는 세 개의 정수 n (1 ≤ n ≤ 1,000) , w (1 ≤ w ≤ 100) and L (10 ≤ L ≤ 1,000)이 주어지는데, n은 다리를 건너는 트 www.acmicpc.net 풀이 1) 현재 다리 위에 건너고 있는 트럭의 무게를 저장할 큐 trucks, 입력 받은 트럭을 저장할 큐 bridge, 현재 다리위의 총 무게를 저장할 변수 sum을 생성한다. 2) bridge의 초기 상태는 다리 길이 w 만큼 0을 넣는다. 3) bridge가 텅텅 빌때까지 계속 하나씩 뽑을 것이다. while() 3-1) 먼저 bridge에서 ..
https://www.acmicpc.net/problem/1052 1052번: 물병 지민이는 N개의 물병을 가지고 있다. 각 물병에는 물을 무한대로 부을 수 있다. 처음에 모든 물병에는 물이 1리터씩 들어있다. 지민이는 이 물병을 또 다른 장소로 옮기려고 한다. 지민이는 한 번 www.acmicpc.net 풀이 이진수로 바꾸면 물병이 몇개 필요한지 쉽게 알 수 있다. 예제에서 N = 3, K = 1 일때, N = 3을 이진수로 표현하면 11(2) 이다. 여기서 1의 개수가 곧 물병의 개수이다. K = 1이므로 물병은 1개 여야만한다. 따라서 가장 쉬운 방법은 1을 더해서 100(2) 로 만드는 것이다. 즉 1개의 물병만 사면 한번에 K = 1개의 물병으로 옮길 수 있게 된다. 다른 예를 들어보자. 만약 ..
https://www.acmicpc.net/problem/9519 9519번: 졸려 첫째 줄에 X(1 ≤ X ≤ 1,000,000,000) 가 주어지고, 둘째 줄에 X번 깜박인 후의 단어가 주어진다. 단어는 알파벳 소문자로만 이루어져 있고, 길이는 구간 [3,1000]에 포함된다. www.acmicpc.net 풀이 1) 단어가 홀수일 경우와 짝수일 경우로 나누어 단어를 섞는다. 섞을때 마다 list에 저장한다. 2) 섞은 결과가 map에 이미 존재할 경우 루프를 돈다는 의미이다. 3) 루프를 발견하면 해당 map의 value 가 주기가 된다. 4) list.get(N을 주기로 나눈 나머지) 가 정답이 된다. 주의사항 1) String 을 더하는 방식으로 하면 오래 걸린다. StringBuilder를 사용..
https://www.acmicpc.net/problem/19638 19638번: 센티와 마법의 뿅망치 마법의 뿅망치를 센티의 전략대로 이용하여 거인의 나라의 모든 거인이 센티보다 키가 작도록 할 수 있는 경우, 첫 번째 줄에 YES를 출력하고, 두 번째 줄에 마법의 뿅망치를 최소로 사용한 횟수 www.acmicpc.net 풀이 1) PriorityQueue 로 거인들의 키를 담는다. 이때 큰 순서가 되기위해 Collections.reverseOrder()를 쓴다. 2) pq에서 하나씩 뽑는다. 2-1) 센티보다 크면 뿅망치로 때리고 다시 집어 넣는다. (이 때, 키가 1인 경우는 봐준다..) 2-2) 센티보다 작으면 그냥 넣어준다. 3) 2) 를 뿅망치 사용 횟수 T 만큼 반복한다. 4) 만약 pq.p..
https://www.acmicpc.net/problem/20923 20923번: 숫자 할리갈리 게임 첫째 줄에는 도도와 수연이가 가지는 카드의 개수 $N$($ 1 \leq N \leq 30\,000$)과 게임 진행 횟수 $M$($ 1 \leq M \leq 2\,500\,000$)이 주어진다. 둘째 줄부터 $N$개의 줄에는 띄어쓰기로 구분하여 도도와 수연 www.acmicpc.net 풀이 1) 도도의 덱(dodo), 도도의 그라운드(gD), 수연의 덱(suyun), 수연의 그라운드(gS) 총 4개의 Deque 자료구조를 선언한다. 2) 게임을 M번 진행한다. (while) 2-0) 도도부터 한장씩 자신의 그라운드에 펼친다. M-- 2-1) 만약 펼칠 패가 없을경우 바로 상대방의 승리이다. 2-2) 펼칠 ..
https://www.acmicpc.net/problem/3258 3258번: 컴포트 입력의 첫째 줄에는 N(2 ≤ N ≤ 1000), Z(2 ≤ Z), M(0 ≤ M ≤ N-2) 이 주어진다. N은 필드의 수이고 Z는 도착해야하는 필드의 번호를 의미한다. 다음 줄에 M개의 서로 다른 정수가 주어진다. 이 정수는 www.acmicpc.net 풀이 1) 방문체크 및 장애물을 나타내는 boolean형 배열 obstacle을 생성한다. 2) K = 1부터 1씩 증가 시키면서 Z 칸에 도달하는지 확인한다. N은 1000 이하이므로 999까지만 증가시키자. 2-0) 현재 칸이 Z 칸이면 K 출력. 2-1) 방문되지 않은 칸 and 장애물이 없는 칸 일 경우 해당 칸을 방문체크 해준다. 2-2) 방문된 칸 or 장..
- Total
- Today
- Yesterday
- 우선순위큐
- 구현
- 그리디
- S3
- 현꾸라지
- SWEA
- map
- PriorityQueue
- 리액트 네이티브
- 다익스트라
- S2
- 객체지향
- G5
- 백트래킹
- 리액트
- DFS
- react
- Spring
- BFS
- 코딩새내기
- laugh4mile
- 문자열
- 알고리즘
- g4
- 시뮬레이션
- java
- react native
- 백준
- 자바
- Spring Boot
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |