n개의 요소와 숫자 m이 있는 배열 A가 있다고 가정합니다. 시험을 보는 학생이 n명 있습니다. 가능한 가장 높은 점수는 m입니다. A[i]는 i번째 학생의 점수입니다. 각 학생의 점수를 조작할 수 있지만 조건이 충족되어야 합니다. 점수는 m을 초과하지 않으며 모든 점수는 정수이며 모든 학생의 평균 점수는 변경되지 않습니다. 1인칭 점수를 최대화하고 싶다면 우리가 줄 수 있는 가장 높은 점수는 얼마가 될까요?
따라서 입력이 A =[1, 2, 3, 4]와 같으면; m =10이면 출력은 10이 됩니다. 평균이 2.5이기 때문에 평균은 같지만 첫 번째 점수가 최대인 점수 [10, 0, 0, 0]를 설정할 수 있습니다.
단계
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
sum :=0n :=A의 크기 초기화 j :=0, j예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
#include네임스페이스 std;int solve(vector A, int m){ int sum =0; 정수 n =A.크기(); for (int j =0; j A ={ 1, 2, 3, 4 }; 정수 m =10; cout <<해결(A, m) < 입력
{ 1, 2, 3, 4 }, 10출력
10