문제 링크: https://www.acmicpc.net/problem/10250
백준 기본 수학 1 5단계 - 10250번 ACM 호텔을 풀어보았다.
풀이: 손님을 세로로 쌓아가면서 호텔방에 배정하는 문제이다.
C++
#include <iostream>
using namespace std;
int main()
{
int cases; // 케이스
cin>>cases;
for(int i=0;i<cases;i++)
{
int num[3]; // 호텔의 층 수, 각 층의 방 수, 몇 번째 손님
for(int j=0;j<3;j++) cin >> num[j];
int a=num[2]%num[0]; // 배치할 층
int b=num[2]/num[0]+1; // 배치할 방, 방이 1부터 시작하므로 1을 더해줌
if(a==0) // 손님의 방이 호텔 층 수의 배수라면
{
a=num[0];
b-=1;
}
if(b>=10) cout<<a<<b<<"\n"; // 방이 10개가 넘어간다면
else cout<<a<<"0"<<b<<"\n"; // 중간에 0을 넣어야 함
}
}
Python
t=int(input())
for i in range(t):
h,w,n=map(int,input().split())
floor=n%h # 층
room=int(n/h)+1 # 방, 1번부터 시작하니까 1을 더해줌
if floor==0: # 사람 수가 호텔 층수의 배수면 따로 처리
floor=h
room-=1
if room>=10: print(f'{floor}{room}') # 방이 10개 이상이면
else: print(f'{floor}0{room}') # 방이 10개 미만이면 중간에 0 넣어야함
Java
'코테용 문제풀이 > 백준' 카테고리의 다른 글
설탕 배달 풀이 (0) | 2023.01.02 |
---|---|
부녀회장이 될테야 풀이 (0) | 2023.01.02 |
달팽이는 올라가고 싶다 풀이 (0) | 2023.01.02 |
분수찾기 풀이 (0) | 2023.01.02 |
벌집 풀이 (0) | 2023.01.02 |