Skip to content

Commit cbc90d5

Browse files
committed
[이진희]3678. Smallest Absent Positive Greater Than Average
1 parent 0d73ea7 commit cbc90d5

1 file changed

Lines changed: 35 additions & 1 deletion

File tree

leetcode3/이진희/3678_Smallest Absent Positive Greater Than Average.java

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,38 @@
1-
/*
1+
/* 2차 풀이
2+
3+
1. 아이디어 : Set사용, 미리 포함된 배열의 값을 저장, while문으로 값을 1씩 올려가며 찾는다
4+
이때, 답은 양수만 되고, 값이 무조건 평균값보다 커야함에 주의
5+
6+
2. 시간복잡도 : O(N + 배열 평균값 ~ 배열의 가장 큰 수+1)
7+
8+
3. 자료구조/알고리즘 : Set
9+
10+
*/
11+
12+
class Solution {
13+
public int smallestAbsent(int[] nums) {
14+
// 가장 작은 nums 배열에 없는 양수 찾기
15+
// 배열 합의 평균값보다 무조건 커야함
16+
17+
double sum = 0.0;
18+
Set<Integer> set = new HashSet<>();
19+
20+
for(int i=0; i<nums.length; i++) {
21+
sum+=nums[i];
22+
set.add(nums[i]);
23+
}
24+
25+
sum/=nums.length;
26+
int ans = sum>0 ? (int)sum : 1;
27+
28+
while(true) {
29+
if(ans>sum && !set.contains(ans)) return ans;
30+
ans++;
31+
}
32+
}
33+
}
34+
35+
/* 1차 풀이
236
337
1. 아이디어 : Set사용, 배열의 수를 미리 저장 후, 평균을 구한 뒤, 값을 1씩 올려가며 찾는다
438

0 commit comments

Comments
 (0)