ALGORITHM

13458_시험감독

서울소시민 2018. 6. 12. 22:03

13458_시험감독

출처 : https://www.acmicpc.net/problem/13458


  1. 학생인원수(A[i]) - 총 감독관이 볼 수 있는 학생수(B).

    1. 1의 값이 0보다 크다면 부 감독관이 봐야할 학생수가 남아 있다는 의미이다.

    2. 1의 값이 0보다 작다면 부 감독관이 봐야할 학생수가 없다. 다음 시험관으로 넘어간다.

  2. 남은 학생수가 부감독관이 볼 수 있는 학생수에 나누어 떨어진다면 몫을 결과값에 더해준다.

  3. 나누어 떨어지지 않는다면, 나눈 몫에 +1을 하여 결과값에 더해준다.

예외는 학생수에 총 감독관이 볼수 있는 학생수를 빼면 음수가 나올 수 있다는 것이다. 그래서 1번과 같은 조건문이 필요하다.


//
// 13458_시험감독.cpp
// cpp
//
// Created by 박종훈 on 2018. 6. 12..
// Copyright © 2018년 박종훈. All rights reserved.
//

#include <stdio.h>
#include <iostream>
#include <vector>
using namespace std;

int main() {
   int N,B,C;
   vector<int> A;
   
   cin >> N;
   A.resize(N);
   
   for(int i=0;i<N;i++){
       cin >> A[i];
  }
   
   cin >> B >> C;
   long long sum=N;
   
   for(auto j : A){
       j= j-B;
       if(j <=0) continue;
       else if(j%C==0) sum+=j/C;
       else sum+=(j/C)+1;
  }
   
   cout << sum;
}

'ALGORITHM' 카테고리의 다른 글

14502_연구소  (0) 2018.06.12
Mutex와 Semaphore  (0) 2018.06.07
1181_단어정렬  (0) 2018.05.11
10989_수 정렬하기3  (0) 2018.05.11
1427_소트인사이드  (0) 2018.05.11