알고리즘 연습

[ 삼성 SW 역량 테스트 A형 기출문제 ] 13458. 시험감독 _ JAVA 문제풀이

코딩하는 너구리 2020. 1. 1. 21:09
반응형

문제

 

 

 

 

 

 

 

 

풀이

 

 

 

2015년 하반기에 출제된 A형 기출 문제입니다.

난이도가 최근 기출 문제에 비해 많이 낮기 때문에 이 정도 난이도의 문제가 다시 나오기는 힘들지 않을까 싶습니다..

 

 

문제에서 시험장의 개수와 각 시험장에 있는 응시자의 수가 주어집니다.

 

각 시험장마다 총감독관 1명은 반드시 있어야 하고, 부감독관들이 위치합니다.

 

시험장마다 모든 응시생들을 모두 감시해야 하기 때문에 필요한 감독관의 수를 구하는 문제입니다.

 

 

#1. 먼저 각 시험장마다 총 감독관 1명은 반드시 있어야 하므로,

        각 응시자의 수를 B만큼 빼주었습니다. ( arr[i] -= B ) 

 

 

#2. 남은 응시자의 수를 C로 나누어 answer값에 더해주었습니다.

      총감독관이 감시할 수 없는 인원들은 모두 부감독관이 해주어야 하기 때문입니다.

              ( answer += arr[i] / C + 1 )

 

 

#3. 남은 응시자의 수가 부감독관이 감시할 수 있는 인원수 C와 딱 맞아 떨어진다면,

      answer 변수를 1만큼 빼주었습니다.

      이는 2번의 과정  answer += arr[i] / C + 1 에서 +1을 빼주는 것입니다.

 

 

이렇게 간단한 수식만으로 문제를 풀이할 수 있습니다.

최근 기출문제에 비해 난이도가 현저히 낮은 문제로 보입니다.

A형 기출문제를 대비하는 데 워밍업 정도로 생각하시면 될 것 같네요

 

 

 

 

코드

 

 

 

 

 

 

 

 

 

출처

 

 

 

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

 

13458번: 시험 감독

첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000)

www.acmicpc.net

 

 

반응형