[C#] 백준 10250번 ACM 호텔
2021. 12. 21. 22:18ㆍC#/[백준] 기본 수학1
정답 코드 :
using System;
namespace _5
{
class Program
{
static void Main(string[] args)
{
int T = Convert.ToInt32(Console.ReadLine());
for (int i = 0; i < T; i++)
{
string input = Console.ReadLine();
string[] inputData = input.Split(' ');
double H = Convert.ToInt32(inputData[0]);
double W = Convert.ToInt32(inputData[1]);
double N = Convert.ToInt32(inputData[2]);
double X = Math.Ceiling(N / H); //N이 10이면 1.6666 > 2
double Y = N % H; //10 % 6 > 4
string output;
// H가 6일때 N이 6의 배수이면 Y가 0이다. 이말은 꼭대기층이란뜻
if (Y == 0)
Y = H;
if(X <= 9)
output = Y.ToString() + "0" + X.ToString();
else
output = Y.ToString() + X.ToString();
Console.WriteLine(output);
}
}
}
}
H를 나눠서 몫과 나머지로 구별하는것이 중요하다
만약 예시가 6 12 10이 들어온다면 10/6 = 1 .XXX , 10%6 = 4다. 1.XX는 W에서 한줄을 다써서 두번째 줄이라는 의미이므로 올림해서 2가 된다.
이것을 보면 알겠지만 X= 1.XXX는 W를 의미하고 Y = 4는 H를 의미한다 즉 402호를 뜻한다.
double X = Math.Ceiling(N / H); //N이 10이면 1.6666 > 2
double Y = N % H; //10 % 6 > 4
그런데 이렇게 풀게되면 6번째손님은 X = 1이 되고 Y = 0이 된다. 즉 Y = 0이라는 말은 꼭대기층이란 말이므로 Y = H를 넣는다.
if (Y == 0)
Y = H;
'C# > [백준] 기본 수학1' 카테고리의 다른 글
[C#] 백준 2839번 설탕 배달 (0) | 2021.12.21 |
---|---|
[C#] 백준 2775번 부녀회장이 될테야 (0) | 2021.12.21 |
[C#] 백준 2869번 달팽이는 올라가고 싶다 (0) | 2021.12.21 |
[C#] 백준 1193번 분수찾기 (0) | 2021.12.21 |
[C#] 백준 2292번 벌집 (0) | 2021.12.21 |