◆C#/C# : 백준 문제 풀이

[백준] C++ & C# 웰컴 키트 (30802번)

진2_ 2024. 9. 20. 23:00
728x90
반응형

[백준] C++ & C# 웰컴 키트 (30802번) 브론즈3

 

 

📝 문제


2024년 2월 3일 개최 예정인 온사이트 그랜드 아레나에서는 참가자들에게 티셔츠 한 장과 펜 한 자루가 포함된 웰컴 키트를 나눠줄 예정입니다.
티셔츠와 펜은 각각 아래와 같은 조건으로 주문해야 합니다:

  • 티셔츠는 S, M, L, XL, XXL, XXXL의 6가지 사이즈가 있습니다.
  • 티셔츠는 각 사이즈별로 T 장씩 묶어서 주문합니다.
  • 펜은 P 자루씩 묶어서 주문하거나, 묶음으로 부족한 펜은 개별로 주문할 수 있습니다.

 

🔎 입력


첫째 줄에 참가자 수 N이 주어집니다.
둘째 줄에 각 티셔츠 사이즈별 신청자 수 S,M,L,XL,XXL,XXXLS, M, L, XL, XXL, XXXL이 주어집니다.
셋째 줄에 TP가 공백으로 구분되어 주어집니다. (2 ≤ T, P ≤ 10^9)

 

🔎 출력


첫째 줄에 티셔츠를 최소 몇 묶음 주문해야 하는지 출력합니다.
둘째 줄에는 펜을 P 자루씩 최대 몇 묶음 주문할 수 있는지와, 나머지 필요한 펜 개수를 출력합니다.

 

🎀 입출력 예시

 

코드 정답 

 

 

c++

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n; // 총 참가자의 수
    cin >> n;

    int arr[6];  // 각 티셔츠 사이즈별 신청자 수 저장

    // 각 티셔츠 사이즈별 신청자 수 입력
    for (int i = 0; i < 6; i++) {
        cin >> arr[i];
    }

    int t, p; // 티셔츠와 펜 세트 당 최대 수
    cin >> t >> p;

    int total_t_set = 0;  // 티셔츠 세트의 총 수

    // 티셔츠 세트 계산
    for (int i = 0; i < 6; i++) {
        total_t_set += (arr[i] + t - 1) / t;  // 필요한 티셔츠 세트 수 계산
    }

    // 펜 세트 계산
    int total_p_set = n / p;  // 펜 세트의 총 수
    int remaining_p = n % p;  // 남은 참가자 수

    cout << total_t_set << "\n";
    cout << total_p_set << " " << remaining_p << "\n";

    return 0;
}

 

C#

 

using System;

class Program
{
    static void Main(string[] args)
    {
        int n = int.Parse(Console.ReadLine());
        int[] arr = Array.ConvertAll(Console.ReadLine().Split(), int.Parse);

        string[] input = Console.ReadLine().Split();
        int t = int.Parse(input[0]);
        int p = int.Parse(input[1]);

        int total_t_set = 0;

        // 티셔츠 세트 계산
        for (int i = 0; i < 6; i++) {
            total_t_set += (arr[i] + t - 1) / t;
        }

        // 펜 세트 계산
        int total_p_set = n / p;
        int remaining_p = n % p;

        Console.WriteLine(total_t_set);
        Console.WriteLine($"{total_p_set} {remaining_p}");
    }
}

 

728x90
반응형