배열 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 |