66. 플러스 원

발행: (2026년 1월 1일 오후 10:01 GMT+9)
2 분 소요
원문: Dev.to

Source: Dev.to

문제 설명

정수 배열 digits가 주어집니다. digits[i]는 해당 정수의 i번째 자리 숫자를 나타냅니다. 숫자는 가장 높은 자리부터 낮은 자리 순서(왼쪽→오른쪽)로 정렬되어 있습니다. 정수는 앞에 0이 없습니다.

작업: 정수를 1만큼 증가시킨 뒤, 결과 배열을 반환합니다.

예시

입력출력설명
digits = [1,2,3][1,2,4]123 + 1 = 124
digits = [4,3,2,1][4,3,2,2]4321 + 1 = 4322
digits = [9][1,0]9 + 1 = 10

제약 조건

  • 1 = 0; $i--) {

솔루션 (PHP)

<?php
function plusOne(array $digits): array {
    $carry = 1;
    for ($i = count($digits) - 1; $i >= 0; $i--) {
        $sum = $digits[$i] + $carry;
        $digits[$i] = $sum % 10;
        $carry = intdiv($sum, 10);
        if ($carry === 0) {
            break; // no further propagation needed
        }
    }
    if ($carry === 1) {
        array_unshift($digits, 1);
    }
    return $digits;
}

// Test cases
print_r(plusOne([1, 2, 3]));   // [1, 2, 4]
print_r(plusOne([4, 3, 2, 1])); // [4, 3, 2, 2]
print_r(plusOne([9]));          // [1, 0]
?>
Back to Blog

관련 글

더 보기 »

1390. 네 개의 약수

문제 설명: 정수 배열 nums가 주어지면, 해당 배열에서 정확히 네 개의 약수를 갖는 정수들의 약수 합을 반환한다. 그런 수가 없으면...

Day 0: 나의 DSA 여정 시작

Day 0 – 계획, 마인드셋 & 커밋먼트 목표: 문제‑solving 능력을 강화하고 interview‑ready 상태가 되기 시작 수준: Beginner / 기본 복습 중 Daily commitme…