Leetcode - 1313. Decompress Run-Length Encoded List

숲사람·2022년 6월 16일
0

멘타트 훈련

목록 보기
61/237

문제

다음의 규칙으로 압축된 배열이 있다. 압축을 풀어라?
[갯수, 값, 갯수, 값 ...] 가령 아래의 예제는 2가 1개, 4가 3개 로 압축해제할 수 있다.

Input: nums = [1,2,3,4]
Output: [2,4,4,4]

해결

int* decompressRLElist(int* nums, int numsSize, int* returnSize){
    *returnSize = 0;
    for (int i = 0; i < numsSize; i += 2)
        *returnSize += nums[i];
    int *ret = (int *)malloc(sizeof(int) * *returnSize);
    int retidx = 0;
    for (int i = 0; i < numsSize; i += 2)
        for (int j = 0; j < nums[i]; j++)
            ret[retidx++] = nums[i+1];
    //assert(*returnSize == retidx);
    return ret;
}
profile
기록 & 정리 아카이브용

0개의 댓글