일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 완전탐색
- 취득후기
- 알고리즘
- 01BFS
- YBMCOS
- COSPRO
- COSPROJAVA1급
- 재귀함수
- PS
- 백준
- DFS
- java
- 이젠 골드구현도 어렵네..
- GatherTown
- 다이나믹프로그래밍
- BFS
- 네트워크플로우
- dp
- spring
- 다익스트라
- deque
- 자바PS
- 시뮬레이션
- 구현
- 우선순위큐
- 게더타운시작
- 백준코딩테스트
- QUICKSTARTGUIDE
- 엘라스틱서치
- 세그먼트트리
- Today
- Total
목록전체 글 (235)
공부공간

https://www.acmicpc.net/problem/21609 21609번: 상어 중학교 상어 중학교의 코딩 동아리에서 게임을 만들었다. 이 게임은 크기가 N×N인 격자에서 진행되고, 초기에 격자의 모든 칸에는 블록이 하나씩 들어있고, 블록은 검은색 블록, 무지개 블록, 일반 블록 www.acmicpc.net 매번 가장큰 size를 가진 일반 블록을 찾기위해 NXN을 탐색한다. (사이즈가 같은경우는 무지개 블록이, 무지개블록이 같은경우는 대표블록의 Y,X값을 참조) 해당 블록이 그룹이 되는 조건을 BFS를 진행하며 확인해준다. ( size가 1이면 그룹이 될 수 없다 ) 또한, 점수를 획득할 그룹이 지정되면 반시계반향으로 돌리는 로직과 ( y,x -> 한변의 길이-x,y ) 중력을 받아서 아래로 내..

https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 �� www.acmicpc.net Stack 자료구조를 사용하여 현재까지의 탑의 높이를 저장하여 내 왼쪽의 탑들중 신호를 수신하는 탑을 찾는 문제이다. 수신되는 탑을 찾기위하여 현재까지 저장된 높이가 내높이보다 크면 add연산을 진행하고 작다면 나보다 큰 높이가 나올때까지 poll연산을 진행한다. package algorithm_2022; import java.io.BufferedReader; import java.io.I..

https://www.acmicpc.net/problem/21608 21608번: 상어 초등학교 상어 초등학교에는 교실이 하나 있고, 교실은 N×N 크기의 격자로 나타낼 수 있다. 학교에 다니는 학생의 수는 N2명이다. 오늘은 모든 학생의 자리를 정하는 날이다. 학생은 1번부터 N2번까지 번호 www.acmicpc.net 순번이 정해져있기 때문에, 순서대로 처리해주면서 해당 자리를 찾아간다. 우선순위가 같을경우 다음의 우선순위로 넘어가게한다. 처음 모집단을 계속 가야지 올바른 만족도를 구할 수 있다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Array..

https://www.acmicpc.net/problem/17069 17069번: 파이프 옮기기 2 유현이가 새 집으로 이사했다. 새 집의 크기는 N×N의 격자판으로 나타낼 수 있고, 1×1크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 (r, c)로 나타낼 수 있다. 여기서 r은 행의 번호, c는 열의 www.acmicpc.net 내가 진행하는 방향이 3가지라고 했을때(오른쪽, 오른쪽 아래, 아래) 이전위치에서 현재 위치로 오는 경우를따진다. 현재오른쪽 = 이전오른쪽 + 이전대각선 현재 대각선 = 이전오른쪽 + 이전대각선 +이전아래 현재 아래 = 이전 아래 + 이전 대각선 이므로 회전시에 MAP에 1이 아니라면 경우의 수를 더해준다. import java.io.BufferedReader; impor..

https://www.acmicpc.net/problem/16928 16928번: 뱀과 사다리 게임 첫째 줄에 게임판에 있는 사다리의 수 N(1 ≤ N ≤ 15)과 뱀의 수 M(1 ≤ M ≤ 15)이 주어진다. 둘째 줄부터 N개의 줄에는 사다리의 정보를 의미하는 x, y (x < y)가 주어진다. x번 칸에 도착하면, y번 칸으 www.acmicpc.net 뱀을 타고 내려가는 것이 이득인 경우가 있을 수 있다. 따라서 모든 경우를 탐색하는 완전탐색 문제이며, bfs로 쉽게 풀린다. 큐에 탐색할때에 를 탐색하면서 현재좌표를 더 낮은 횟수로 올 수 있을때에만 탐색을 진행한다. import java.io.BufferedReader; import java.io.IOException; import java.io...

https://www.acmicpc.net/problem/1780 1780번: 종이의 개수 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수 www.acmicpc.net 현재 좌표와 길이를 변수로 재귀탐색을 하며, 모두 같은지 여부를 판단한다. 모두같은경우 -1 0 1 을 나누고 아닌경우 길이/3로 나누어서 재 탐색한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; publ..

https://www.acmicpc.net/problem/9375 9375번: 패션왕 신해빈 첫 번째 테스트 케이스는 headgear에 해당하는 의상이 hat, turban이며 eyewear에 해당하는 의상이 sunglasses이므로 (hat), (turban), (sunglasses), (hat,sunglasses), (turban,sunglasses)로 총 5가지 이다. www.acmicpc.net n0가지와 n1,n2,n3 ... nn가지있을때에 (n0+1)*(n1+1)*(n2+1)*...(nn+1) 가지에서 아무것도 걸치지않은 한가지를 빼주자. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamR..

https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net DEQUE를 사용해도되고 투포인터로 배열의 크기를 잡아주어도 된다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class Main { public static void main(String[] args)..