배열 A가 주어집니다. 
배열은 N개의 서로 다른 정수로 이루어져 있으며, 정수의 범위는 [1..(N + 1)] 입니다. 
즉, 배열에는 정확히 하나의 원소가 빠져 있습니다.

목표:
빠져 있는 원소를 찾아내는 것입니다.

함수는 다음과 같이 작성해야 합니다:

class Solution {
    public int solution(int[] A);
}

이 함수는 배열 A가 주어졌을 때,
빠져 있는 원소의 값을 반환해야 합니다.

예시:
A[0] = 2
A[1] = 3
A[2] = 1
A[3] = 5

배열에는 1, 2, 3, 5가 있고,
빠져 있는 원소는 4입니다.

따라서 함수는 4를 반환해야 합니다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    public int solution(int[] A)
    {
        int n = A.Length;
 
        // 1부터 n까지의 합은 n * (n + 1) / 2
        // 숫자가 하나 빠져있으니, 1부터 n + 1 까지의 합에서 A의 합을 빼면 빠진 숫자가 나옴
        long expectedSum = (long)(n + 1* (n + 2/ 2;
 
        long aSum = 0;
 
        foreach (int num in A)
            aSum += num;
 
        return (int)(expectedSum - aSum);
    }
cs

'코딜리티 > Lesson' 카테고리의 다른 글

FrogRiverOne  (0) 2025.09.15
TapeEquilibrium (누적합 + 이항)  (0) 2025.09.15
FrogJmp  (0) 2025.09.14
OddOccrurrencesInArray (짝 없는 원소)  (0) 2025.09.13
CyclicRotation (배열 회전)  (0) 2025.09.13

+ Recent posts