RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R02968

Minimize the Array Sum

Silver V 실버 V
난이도
2s
시간 제한
256MB
메모리 제한
0
맞았습니다!!
0
제출 수
0.0%
정답률
레이팅

의견: 0

설명

배열 \(A = (A_1, A_2, ..., A_n)\)이 주어진다.

그리고 다음 동작을 정확히 \(B\)번 수행할 수 있다.

  • \(A_i = c\)인 모든 값들을 0으로 바꾼다.

위의 동작을 정확히 \(B\)번 수행한 후, 가능한 배열 \(A\)의 합 중 최솟값을 구하시오.

입력

첫 번째 줄에 배열 \(A\)의 길이 \(n\)과 동작의 시행횟수 \(B\)가 입력으로 들어온다.

두 번째 줄에 \(A_1, A_2, ..., A_n\)이 입력으로 들어온다.

출력

\(B\)번의 동작 이후, 가능한 배열 \(A\)의 합 중 최솟값을 출력한다.

제한
  • 입력은 모두 정수

  • \(1 \le B \le n \le 300,000\)

  • \(1 \le A_i \le 10^9\)

예제 1 설명

먼저 \(A_i = 1\) 인 모든 값들을 0으로 바꾸면 배열은 다음과 같이 변한다 : \((0, 0, 0, 0, 0, 7, 2, 2, 3, 4)\)

그리고 \(A_i = 7\)인 모든 값들을 0으로 바꾸면 배열은 다음과 같이 변한다 : \((0, 0, 0, 0, 0, 0, 2, 2, 3, 4)\)

그러면 남은 배열의 합은 \(2 + 2 + 3 + 4 = 11\) 이다.

예제 2 설명

이미 0이 된 \(A_i\)에 대해서도 동작을 수행할 수 있다.

서브태스크

번호
배점
제한

1
10
\(n \le 100\)

2
20
모든 \(A_i\)는 다른 값이다.

3
20
\(A_i \le 1000\)

4
50
추가 제한 없음

제약
입력 형식

First line \(n\) and \(B\) (\(1 \le B \le n \le 300000\)). Second line \(A_1, \dots, A_n\) (\(1 \le A_i \le 10^9\)).

출력 형식

Print the minimum possible sum.

예제 1
입력
10 2
1 1 1 1 1 7 2 2 3 4
출력
11
예제 2
입력
5 3
1 2 2 2 1
출력
0
문제 정보

riseoj 작성

출처 Online Judge > GoldOJ

평가 및 의견

Minimize the Array Sum

개요
출제자 난이도 Silver V 실버 V 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Minimize the Array Sum

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8