백준 111

[백준 22233] 가희와 키워드 (JAVA)

https://www.acmicpc.net/problem/22233 22233번: 가희와 키워드 1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을 www.acmicpc.net map을 이용하여 메모장의 키워드들을 넣어준다. count 변수는 처음에 n으로 세팅하고, 글을 쓰면서 사용하게 되는 키워드의 개수를 뺀다! import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { Buffere..

Java 2023.04.23

[백준 14940] 쉬운 최단거리(JAVA)

https://www.acmicpc.net/problem/14940 14940번: 쉬운 최단거리 지도의 크기 n과 m이 주어진다. n은 세로의 크기, m은 가로의 크기다.(2 ≤ n ≤ 1000, 2 ≤ m ≤ 1000) 다음 n개의 줄에 m개의 숫자가 주어진다. 0은 갈 수 없는 땅이고 1은 갈 수 있는 땅, 2는 목표지점이 www.acmicpc.net bfs로 해결 가능한 문제였다. 최단거리 배열 dp 현재 위치에서 출발하는 큐를 생성하여 문제를 푼다. 큐를 꺼내면서 동서남북을 확인하여 방문 여부를 본 후, 현재 거리값의 +1을 한 값을 dp에 넣는다! 방문 여부가 없는데 땅인 곳은 갈 수 없는 땅이기에 -1을 출력한다. import java.io.BufferedReader; import java.i..

Java 2023.04.23

[백준 19941] 햄버거 분배

https://www.acmicpc.net/problem/19941 19941번: 햄버거 분배 기다란 벤치 모양의 식탁에 사람들과 햄버거가 아래와 같이 단위 간격으로 놓여 있다. 사람들은 자신의 위치에서 거리가 $K$ 이하인 햄버거를 먹을 수 있다. 햄버거 사람 햄버거 사람 햄버거 사 www.acmicpc.net 간단하게 배열을 생성하여 이미 먹은 햄버거인지 확인한다. 아주 간단한 실버3 문제였다..! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static boolean[] eatChec..

Java 2023.04.22

[백준 1781] 컵라면 (JAVA)

https://www.acmicpc.net/problem/1781 1781번: 컵라면 상욱 조교는 동호에게 N개의 문제를 주고서, 각각의 문제를 풀었을 때 컵라면을 몇 개 줄 것인지 제시 하였다. 하지만 동호의 찌를듯한 자신감에 소심한 상욱 조교는 각각의 문제에 대해 데드라 www.acmicpc.net 아래의 우선순위로 정렬하고 1) 데드라인이 작은 것 2) 컵라면 수가 큰 것 풀 수 있는 문제의 컵라면 수를 넣어줄 우선순위큐를 생성한다. 포문을 돌려서 큐의 사이즈는 즉, 풀 수 있는 문제 수와 같기에 이를 문제의 데드라인과 비교하여 큐의 사이즈보다 문제의 데드라인이 더 크다면 풀 수 있기에 큐에 넣고, 큐의 사이즈와 문제의 데드라인이 같다면 큐의 가장 작은 값을 peek하여 현재 문제의 컵라면 수와 비..

Java 2023.04.21

[백준 17266] 어두운 굴다리 (JAVA)

https://www.acmicpc.net/problem/17266 17266번: 어두운 굴다리 인하대학교 후문 뒤쪽에는 어두운 굴다리가 있다. 겁쟁이 상빈이는 길이 조금이라도 어둡다면 가지 않는다. 따라서 굴다리로 가면 최단거리로 집까지 갈수 있지만, 굴다리는 어둡기 때문에 빙 www.acmicpc.net 이분탐색으로 해결해야하는 문제였다.. start =1 , end=n으로 설정하여 mid값을 돌리면서 높이값을 mid로 했을때 모든 거리를 비추는지 확인한다! 모두 비추면 end값을 mid-1로 해준다. 그렇게 해서 최소의 높이 값을 찾는다! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReade..

Java 2023.04.20

[백준 9205] 맥주 마시면서 걸어가기 (JAVA)

https://www.acmicpc.net/problem/9205 9205번: 맥주 마시면서 걸어가기 송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. www.acmicpc.net bfs를 사용하여 해결 할 수 있는 문제이다! 맥주는 max 20개로 최대한 많이 갈 수 있는 거리는 1000이다. 편의점에 도착하면 맥주를 20개 다 리필 가능하기 때문에, 현위치에서 1000까지의 거리 안에 갈 수 있는 편의점이 있는지 확인하고, 이미 간 적이 있는 곳이 아니라면 큐에 넣어서 현위치를 변경한다! 그렇게 현위치에서 축제까지의 거리가 1000이하라면 happy ~~~! imp..

Java 2023.04.20

[백준 14503] 로봇 청소기 (JAVA)

https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net 삼성 코테가 잠시 생각나는 문제였다,, 삼성 문제들에 비해선 매우 간단한 문제지만 반시계 방향 회전이라는 말과 친절한 설명에 잠심 스쳐지나갔다 ㅠㅠ 문제 설명대로 구현만 하면 간단하게 해결 가능한 문제였다! 문제 길이에 겁 먹지 맙시당 ㅎㅎ import java.io.BufferedReader; import java.io.IOException; i..

Java 2023.04.19

[백준 2468] 안전 영역 (JAVA)

https://www.acmicpc.net/problem/2468 2468번: 안전 영역 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 www.acmicpc.net 처음에 문제를 잘못 이해해서 힘들었다.. 안전한 영역의 뭉탱이를 구하는 문제로, 비가 0 ~ 최대값까지 내렸을때의 안전 영역 최대 갯수를 구한다! (필자는 최소값도 구하여 확인했었으나, 비가 안왔을때의 가정도 있다는 거!!!!!!) 인접한 구역에 대한 방문 처리를 한 후, 1을 리턴한다. (뭉탱이이기에 1 리턴) 그렇게 count를 계산하여 최대 갯수를 구한다~ import java.io.Buffered..

Java 2023.04.19

[백준 2410] 2의 멱수의 합 (JAVA)

https://www.acmicpc.net/problem/2410 2410번: 2의 멱수의 합 첫째 줄에 경우의 수를 출력한다. 답이 커질 수 있으므로 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net N=1 -> 1 N=2 -> 1+1, 2 N=3 -> 1+1+1, 2+1 N=4 -> 1+1+1+1, 2+1+1, 2+2, 4 N=5 -> 1+1+1+1+1, 2+1+1+1, 2+2+1, 4+1 ... 홀수이면 이전 숫자와 동일한 갯수이고, 짝수이면 이전 숫자의 갯수 + n/2 숫자의 갯수 이다! import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ..

Java 2023.04.18