티스토리 뷰
문제
2024년 2월 3일 개최 예정인 온사이트 그랜드 아레나에서는 참가자들에게 티셔츠 한 장과 펜 한 자루가 포함된 웰컴 키트를 나눠줄 예정입니다. 키트를 제작하는 업체는 다음과 같은 조건으로만 주문이 가능합니다.
- 티셔츠는 S, M, L, XL, XXL, 그리고 XXXL의 6가지 사이즈가 있습니다. 티셔츠는 같은 사이즈의 T장 묶음으로만 주문할 수 있습니다.
- 펜은 한 종류로, P자루씩 묶음으로 주문하거나 한 자루씩 주문할 수 있습니다.
총 N명의 참가자 중 S, M, L, XL, XXL, XXXL 사이즈의 티셔츠를 신청한 사람은 각각 S,M,L,XL,XXL,XXXL명입니다. 티셔츠는 남아도 되지만 부족해서는 안 되고 신청한 사이즈대로 나눠주어야 합니다. 펜은 남거나 부족해서는 안 되고 정확히 참가자 수만큼 준비되어야 합니다.
티셔츠를 T장씩 최소 몇 묶음 주문해야 하는지, 그리고 펜을 P자루씩 최대 몇 묶음 주문할 수 있고, 그 때 펜을 한 자루씩 몇 개 주문하는지 구하세요.
입력
첫 줄에 참가자의 수 N 이 주어집니다. (1≤N≤109)
둘째 줄에 티셔츠 사이즈별 신청자의 수 S,M,L,XL,XXL,XXXL이 공백으로 구분되어 주어집니다. (0≤S,M,L,XL,XXL,XXXL≤N; S+M+L+XL+XXL+XXXL=N)
셋째 줄에 정수 티셔츠와 펜의 묶음 수를 의미하는 정수 T와 P가 공백으로 구분되어 주어집니다. (2≤T,P≤109)
출력
첫 줄에 티셔츠를 T장씩 최소 몇 묶음 주문해야 하는지 출력하세요.
다음 줄에 펜을 P자루씩 최대 몇 묶음 주문할 수 있는지와, 그 때 펜을 한 자루씩 몇 개 주문하는지 구하세요.
//참가자의 수.
int playerN = int.Parse(Console.ReadLine());
//사이즈별 필요한 티셔츠 수. + int 형변환
string[] input = Console.ReadLine().Split(' ');
int[] shirtN = Array.ConvertAll(input, int.Parse);
//티셔츠와 볼펜의 묶음. + int 형변환
//TP[0]이 티셔츠 묶음. [1]이 볼펜 묶음.
string[] input02 = Console.ReadLine().Split(' ');
int[] TP = Array.ConvertAll(input02, int.Parse);
//주문해야 하는 티셔츠 묶음 최소 수.
int Tcount = 0;
//티셔츠 구하기
//사이즈의 수만큼 반복.
for(int i = 0; i < shirtN.Length; i++)
{
//필요한 티셔츠가 0이라면
if(shirtN[i] == 0)
{
Tcount += 0;
}
//제공하는 한 묶음 당 수가 필요한 티셔츠 수보다 많다면
else if(shirtN[i] < TP[0])
{
Tcount ++;
}
//제공하는 한 묶음 당 수가 필요한 티셔츠 수보다 적다면
else if(shirtN[i] >= TP[0])
{
//최소 몇 묶음이 필요한지 구하기 위해 나누고, 나머지를 올림한다.
Tcount += (int)Math.Ceiling((double)shirtN[i] / TP[0]);
}
}
//티셔츠 구하기
Console.WriteLine(Tcount);
//볼펜 구하기.
Console.WriteLine($"{playerN / TP[1]} {playerN % TP[1]}");
오늘 배운 점
구현 능력 ++
예외 처리, 모든 경우의 수를 구현하기.
- 첫번째 제출할 때, shirtN[i]와 TP[0]이 같을 경우를 생략해서 틀렸음.
Math.Ceiling()
- 소수점 이하 값을 올림하는 코드. (반올림이 아니라 무조건 올림해주는. 0.2이면 1.0으로 올림)
- double로 변환하여 나눗셈을 진행하고 다시 int로 형변환하여 Tcount에 더한다.
'프로그래밍' 카테고리의 다른 글
2025.02.09 군대 개발 현황 (0) | 2025.02.09 |
---|---|
C# - 백준 4153 문제 풀이 (1) | 2024.09.21 |
C# - 백준 10250 문제 풀이 (0) | 2024.09.21 |
C# - 백준 10809 문제 풀이 (0) | 2024.09.21 |
C# - 백준 11720 문제 풀이 (0) | 2024.09.20 |
- Total
- Today
- Yesterday
- 게임 개발 독학하는 법
- 문자열 보간
- 쓴소리 모음
- console.writeline
- 공포게임
- 인디
- 독학
- c#
- 인디 게임 개발
- 유니티
- 위인 명언
- 쓴소리
- 인생 명언
- 문제 풀이
- AI 공부
- c# 독학
- 명언 모음
- 무료공포게임
- 모바일 게임 추천
- 파피플레이타임
- 프로그래밍 독학하는 법
- 게임 개발
- 공포게임추천
- 성공 명언
- 백준
- 개발 공부
- 게임 추천
- 백준 30802
- 프로그래밍
- 개발 독학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |