본문 바로가기
온라인저지

[BOJ] 10250번: ACM 호텔

by plzfday 2018. 8. 4.

https://www.acmicpc.net/problem/10250

풀이가 2가지 방법이 있다.

하나는 직접 for문을 통해 계산하는 방법.

다른 하나는 규칙을 통해 계산하는 방법.

근데 보통 다른 상황과 엮이지 않고 이 상태에서의 답을 구하는 문제들은 규칙성을 노리고 내는 문제들 같다(개인적인 생각)

규칙

층: (N - 1) % H + 1

호: (N - 1) / H + 1

-1 후에 +1을 해주는 이유는 N과 H가 같은 경우에 발생하는 문제가 있다.

H(전체 층수)가 3일 때 N = 3인 경우 N % H로 계산하면 0층이 된다. 그래서 그렇다.

호도 저렇게 해주는 이유가 위와 비슷하다 N == H일 때 N / H + 1이면 1이어야 하는데 2가 된다.

#include <cstdio>
int main()
{
    int T;
    scanf("%d", &T);
    while (T--)
    {
        int W, H, N;
        scanf("%d %d %d", &H, &W, &N);
        printf("%d%02d\n", ((N - 1) % H) + 1, ((N - 1) / H + 1));
    }
    return 0;
}

 

'온라인저지' 카테고리의 다른 글

[BOJ] 14442번: 벽 부수고 이동하기 2  (0) 2018.08.07
[BOJ] 1727번: 커플 만들기  (0) 2018.08.04
[BOJ] 2775번: 부녀회장이 될테야  (0) 2018.08.04
[BOJ] 1967번: 트리의 지름  (0) 2018.08.02
[BOJ] 6603번: 로또  (0) 2018.08.02
[BOJ] 2178번: 미로 탐색  (0) 2018.08.02

댓글