티스토리 뷰

C언어

[백준-3733]: Shares(C99)-브론즈5

문화택시 2024. 4. 23. 14:29

목차



     

     

    문제

    N명으로 구성된 그룹과 ACM 수석심판은 S주를 균등하게 공유합니다(모두 필요하지는 않음). 
    x를 각 개인이 취득한 주식 수로 설정합니다(x는 정수여야 함). 문제는 x의 최대값을 계산하는 것입니다.
    
    입력 텍스트 파일에서 정수 쌍을 읽는 프로그램을 작성하세요. 
    각 쌍에는 1 ≤ N ≤ 10000 및 1 ≤ S ≤ 109 값이 순서대로 포함됩니다. 
    입력 데이터는 공백으로 자유롭게 구분되고 정확하며 파일 끝으로 종료됩니다. 
    각 숫자 쌍에 대해 프로그램은 x의 최대값을 계산하고 
    아래 예와 같이 행의 시작 부분부터 표준 출력에 해당 값을 인쇄합니다.

     

    ※내용정리

    "입력값으로 N과 S가 순서대로 들어오고, N명으로 구성된 그룹과 심판 한 명은 S주를 동등하게 나눠가질때  모두가 똑같이 나눠 가질 수 있는 주는 최대 몇 개인지 출력해라!"

     

    ※필요한 배경지식

    단순히 입력된 그룹의 N명+심판 1명 나누기 S를 하면 최대값이 나옴으로 연산자를 알고 있고,

    파일끝에 출력이 끝나니 반복문과 EOF을 알고 있으면 문제를 쉽게 풀 수 있을 것이다.

     

     

    #include<stdio.h>
    int main() {
    	int N,S;
        int sum;
    	while (scanf("%d %d", &N, &S)!=EOF) {
    		sum = S / (N + 1);
    		printf("%d\n", sum);
    	}
    	return 0;
    }

     

    반응형