728x90

 이 문제는 할로윈의 사탕으로

사탕을 나누어 주는 것과 관련된 문제입니다.

문제 링크는

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

 

10178번: 할로윈의 사탕

할로윈데이에 한신이네는 아부지가 사탕을 나눠주신다. 하지만 한신이의 형제들은 서로 사이가 좋지않아 서른이 넘어서도 사탕을 공정하게 나누어 주지 않으면 서로 싸움이 난다. 매년 할로윈

www.acmicpc.net

이것이고 여기서 구하고자 하는 것은 각 개인과 아부지에게 나눠지는 것입닌다.

#include <stdio.h>
int main(void){
    int test;
    scanf("%d", &test);
    int total, many;
    int divyou[test];
    int divdad[test];
    for(int i=0;i<test;i++){
        scanf("%d %d", &total, &many);
        divyou[i]=total/many;
        divdad[i]=total%many;
    }
    for(int i=0;i<test;i++){
        printf("You get %d piece(s) and your dad gets %d piece(s).\n", divyou[i],divdad[i]);
    } 
      
}

이렇게 코드를 짤 수있습니다.

가독성을 위해 변수를 줄별로 만들었지만

줄일 수도 있습니다.

일단 테스트 갯수를 받고 

그만큼 for문을 돌려주면 됩니다.

 

for문안에서 전체 갯수와 형제의 수를 받은다음에

그리고 total에서 many로 나누어줍니다.

여기서 저는 배열을 사용하였는데

각 케이스마다 출력하는 문제가 아니라 나중에 한번에 출력하기 때문입니다.

 

이렇게 값을 추가한 뒤에 출력에서도 for문을 돌려가면서 각 배열에 저장되어있는 값을

지정 문장과 함께 출력하면 됩니다.

 

이 문제는 조금 생각해서 코드를 짜면

쉽게 풀어지는 문제라고 생각이 들었습니다.

728x90

+ Recent posts