SY 개발일지
article thumbnail
[백준 30464] 시간 낭비 - Java 문제풀이
Java/문제풀이 2024. 5. 23. 14:36

문제 링크: https://www.acmicpc.net/problem/30464  문제건덕이는 학교에 가기 너무 싫은 나머지 최대한 늦게 학교에 도착하려고 한다. 등굣길은 N개의 칸이 가로로 놓인 형태이며, 각 칸은 가장 왼쪽 칸부터 오른쪽으로 1부터 N까지 번호가 매겨진다. 건덕이는 1번 칸에, 학교는 N번 칸에 존재한다.건덕이는 처음에 학교를 바라보는 방향으로 서 있다. 등교하는 방법은 특이한데, 1분마다 현재 자신이 서 있는 칸에 쓰인 수만큼 바라보는 방향으로 이동한다. 이때, 등굣길을 벗어나도록 이동할 수 없다.건덕이는 바라보는 방향을 최대 두 번 반전할 수 있다. 학교가 있는 칸에 처음으로 도착하는 시간을 최대한 늦추면 출발 몇 분 뒤에 도착할까? 건덕이가 방향을 반전하는 데 드는 시간은 무시한..

article thumbnail
[백준 31804] Chance! - Java 문제풀이
Java/문제풀이 2024. 5. 21. 14:56

문제 링크: https://www.acmicpc.net/problem/31804  문제자료구조 시험에서 우찬이는 a점을 받았고, 상훈이는 우찬이보다 높은 b점을 받았다. 우찬이는 상훈이보다 점수가 낮아서 화가 났지만, 공부를 하나도 하지 않아서 상훈이보다 시험을 잘 볼 수는 없다는 것을 알고 있었다. 하지만 우찬이는 최소한 동점을 받고 싶었기 때문에, 자신의 수를 바꾸는 마법을 배워서 다음 3가지 마법을 사용할 수 있게 되었다.물 주기: 수에 물을 주면 수가 1 커진다.밥 주기: 수에 밥을 주면 수가 2배가 된다.chance!: 수에 chance!를 외치면 수가 10배가 된다.하지만 chance!를 외치면 목이 너무 아프기 때문에 우찬이는 chance! 마법을 최대 한 번만 사용할 수 있다. 그리고 마법..

article thumbnail
[백준 17485] 진우의 달 여행(Large) - Java 문제풀이
Java/문제풀이 2024. 5. 13. 13:51

문제 링크: https://www.acmicpc.net/problem/17485 문제우주비행이 꿈이였던 진우는 음식점 '매일매일싱싱'에서 열심히 일한 결과 달 여행에 필요한 자금을 모두 마련하였다! 지구와 우주사이는 N X M 행렬로 나타낼 수 있으며 각 원소의 값은 우주선이 그 공간을 지날 때 소모되는 연료의 양이다.[예시]진우는 여행경비를 아끼기 위해 조금 특이한 우주선을 선택하였다. 진우가 선택한 우주선의 특징은 아래와 같다.1. 지구 -> 달로 가는 경우 우주선이 움직일 수 있는 방향은 아래와 같다.2. 우주선은 전에 움직인 방향으로 움직일 수 없다. 즉, 같은 방향으로 두번 연속으로 움직일 수 없다.진우의 목표는 연료를 최대한 아끼며 지구의 어느위치에서든 출발하여 달의 어느위치든 착륙하는 것이다..

article thumbnail
[백준 31501] DP(small) - Java 문제풀이
Java/문제풀이 2024. 5. 8. 15:11

문제 링크: https://www.acmicpc.net/problem/31501 문제이 문제는 DP (Large)와 문제의 수 제한, 질문의 수 제한, 문제의 난이도 제한이 다른 문제이다.DP는 DYNAMIC Porani의 약자이다.DYNAMIC한 포라니는 가능한 문제를 DYNAMIC하게 푸는 것을 좋아한다. DYNAMIC한 문제 풀이란 문제의 번호와 난이도가 모두 증가하도록 가능한 한 많이 푸는 것이다.방학을 맞은 포라니는 알고리즘 능력 향상을 위해 선배로부터 추천 문제 셋을 받았다. 나태한 포라니는 모든 문제를 풀고 싶지 않다. 만약 선배로부터 어떤 문제를 풀라는 지시를 받았을 때, 그 문제를 포함하여 DYNAMIC하게 문제를 풀었을 경우 몇 문제를 풀어야 하는지 알려주자. 입력첫 번째 줄에 문제의 ..

article thumbnail
[백준 17090] 미로 탈출하기 - Java 문제풀이
Java/문제풀이 2024. 5. 3. 10:53

문제 링크: https://www.acmicpc.net/problem/17090 문제크기가 N×M인 미로가 있고, 미로는 크기가 1×1인 칸으로 나누어져 있다. 미로의 각 칸에는 문자가 하나 적혀있는데, 적혀있는 문자에 따라서 다른 칸으로 이동할 수 있다.어떤 칸(r, c)에 적힌 문자가U인 경우에는 (r-1, c)로 이동해야 한다.R인 경우에는 (r, c+1)로 이동해야 한다.D인 경우에는 (r+1, c)로 이동해야 한다.L인 경우에는 (r, c-1)로 이동해야 한다.미로에서 탈출 가능한 칸의 수를 계산해보자. 탈출 가능한 칸이란, 그 칸에서 이동을 시작해서 칸에 적힌대로 이동했을 때, 미로의 경계 밖으로 이동하게 되는 칸을 의미한다. 입력첫째 줄에 미로의 크기 N, M(3 ≤ N, M ≤ 500)이 ..

article thumbnail
[백준 30621] 어? 금지 - Java 문제풀이
Java/문제풀이 2024. 4. 17. 13:02

문제 링크: https://www.acmicpc.net/problem/30621 30621번: 어? 금지 '어?' 팀 대회 중 주변에서 '어?'라는 말이 들리면 마음이 혼란해진다. 그렇다고 해서 '어?'를 남발하면 혼란보다는 짜증이 앞서게 된다. 이를 잘 알고 있는 성우는 적당한 선을 지키면서 대회장에 www.acmicpc.net 문제 '어?' 팀 대회 중 주변에서 '어?'라는 말이 들리면 마음이 혼란해진다. 그렇다고 해서 '어?'를 남발하면 혼란보다는 짜증이 앞서게 된다. 이를 잘 알고 있는 성우는 적당한 선을 지키면서 대회장에 최대한 큰 혼란을 주려고 한다. 대회는 시각 0에 시작한다. 성우가 '어?'를 외칠 수 있는 시각은 N개가 있고, i 번째 시각은 ti다. (1 ≤ i ≤ N) 만약 성우가 시..

article thumbnail
[백준 2011] 암호코드 - Java 문제풀이
Java/문제풀이 2023. 12. 20. 16:58

오늘의 1일 1골드 문제는 다음 문제이다. https://www.acmicpc.net/problem/2011 2011번: 암호코드 나올 수 있는 해석의 가짓수를 구하시오. 정답이 매우 클 수 있으므로, 1000000으로 나눈 나머지를 출력한다. 암호가 잘못되어 암호를 해석할 수 없는 경우에는 0을 출력한다. www.acmicpc.net 문제 문제 상근이와 선영이가 다른 사람들이 남매간의 대화를 듣는 것을 방지하기 위해서 대화를 서로 암호화 하기로 했다. 그래서 다음과 같은 대화를 했다. 상근: 그냥 간단히 암호화 하자. A를 1이라고 하고, B는 2로, 그리고 Z는 26으로 하는거야. 선영: 그럼 안돼. 만약, "BEAN"을 암호화하면 25114가 나오는데, 이걸 다시 글자로 바꾸는 방법은 여러 가지가 ..

article thumbnail
[백준 1915] 가장 큰 정사각형 - Java 문제풀이
Java/문제풀이 2023. 12. 18. 20:41

오늘의 1일 1골드 문제는 다음 문제이다. https://www.acmicpc.net/problem/1915 1915번: 가장 큰 정사각형 첫째 줄에 n, m(1 ≤ n, m ≤ 1,000)이 주어진다. 다음 n개의 줄에는 m개의 숫자로 배열이 주어진다. www.acmicpc.net 문제 문제 n×m의 0, 1로 된 배열이 있다. 이 배열에서 1로 된 가장 큰 정사각형의 크기를 구하는 프로그램을 작성하시오. 0 1 0 0 0 1 1 1 1 1 1 0 0 0 1 0 위와 같은 예제에서는 가운데의 2×2 배열이 가장 큰 정사각형이다. 입력 첫째 줄에 n, m(1 ≤ n, m ≤ 1,000)이 주어진다. 다음 n개의 줄에는 m개의 숫자로 배열이 주어진다. 해설 보통 문제에서 ~의 합을 이용해서 푸는 경우에는 ..