구현

알고리즘/탐색

[백준] 14503 로봇 청소기 (DFS) - Java

14503번: 로봇 청소기 첫째 줄에 방의 크기 NM이 입력된다. (3N,M50) 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 (r,c)와 처음에 로봇 청소기가 바라보는 방향 d가 입력된다. d0인 경우 북쪽 www.acmicpc.net 문제 상황 로봇 청소기와 방의 상태가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 방은 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1 크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북 중 하나이다. 방의 각 칸은 좌표 (r,c)로 나타낼 수 ..

알고리즘/수학

[백준] 10250 ACM 호텔 (수학) - Java

10250번: ACM 호텔 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 문제설명 ACM 호텔은 손님이 오면 엘리베이터에 가까운 방부터 손님을 안내한다. 각 층의 1호실이 엘레베이터에서 제일 가까운 방이다. 걷는 거리가 같을 때에는 아래층의 방을 더 선호한다. 호텔의 층 수, 각 층의 방 수, 손님의 방문 순서 의 3개의 정수를 입력받아 N번째 손님이 묵을 호수를 출력해야한다. 문제 풀이 import java.util.Scanner; public class Main { public static v..

알고리즘/수학

[백준] 1193 분수찾기 (수학) - Java

https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 문제설명 무한히 큰 배열에 다음과 같이 분수들이 적혀있다. 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … … 3/1 3/2 3/3 … … … 4/1 4/2 … … … … 5/1 … … … … … … … … … … … 이와 같이 나열된 분수들을 1/1 → 1/2 → 2/1 → 3/1 → 2/2 → … 과 같은 지그재그 순서로 차례대로 1번, 2번, 3번, 4번, 5번, … 분수라고 하자. X가 주어졌을 때, X번째 분수를 구하는 프로그램을 작성하시오. 문제 접근 대각선 1 1/1 대각선 2 1/2 2/1 ..