넘치게 채우기

[LeetCode] 3264. Final Array State After K Multiplication Operations I 본문

PS/LeetCode

[LeetCode] 3264. Final Array State After K Multiplication Operations I

riveroverflow 2024. 12. 16. 10:30
728x90
반응형

https://leetcode.com/problems/final-array-state-after-k-multiplication-operations-i/description/

leetcode - Final Array State After K Multiplication Operations I

문제 유형: 구현, 그리디

문제 난이도: Easy

 

문제

You are given an integer array nums, an integer k, and an integer multiplier.

You need to perform k operations on nums. In each operation:

  • Find the minimum value x in nums. If there are multiple occurrences of the minimum value, select the one that appears first.
  • Replace the selected minimum value x with x * multiplier.

Return an integer array denoting the final state of nums after performing all k operations.

 

정수 배열 nums와 정수k, multiplier를 받는다.

다음의 연산을 k번 수행한 결과를 반환하시오:

  • 가장 작은 요소 x를 고른다. 같은 크기가 있다면, 더 앞의인덱스로 한다.
  • 선택된 요소 x에 multiplier만큼 곱하시오.

 

풀이

그대로 연산을 수행해주면 된다.

 

코드

C++

class Solution {
public:
    vector<int> getFinalState(vector<int>& nums, int k, int multiplier) {
        int n = nums.size();
        for(int i = 0; i < k; ++i) {
            int minIdx = 0;
            for(int j = 1; j < n; ++j) {
                if(nums[j] < nums[minIdx]) minIdx = j;
            }
            nums[minIdx] *= multiplier;
        }

        return nums;
    }
};
 
728x90
반응형