set을 이용하여 풀었는데 시간초과가 뜹니다.
364
wndyd01105244
投稿した質問数 14
0
package hash;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Scanner;
public class TypeOfSales {
static ArrayList<Integer> solution(int n, int k, int[] arr) {
Collection<Integer> set = new HashSet<>();
Collection<Integer> list = new ArrayList<>();
ArrayList<Integer> result = new ArrayList<>();
int p1 = 1;
for(int i = 0; i < k; i++) {
list.add(arr[i]);
}
set.addAll(list);
result.add(set.size());
while(p1 < n-k+1) {
set.clear();
list.remove(arr[p1-1]);
list.add(arr[p1+k-1]);
set.addAll(list);
result.add(set.size());
p1++;
}
return result;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int[] arr = new int[n];
for(int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
for(int x : TypeOfSales.solution(n, k, arr)) {
System.out.print(x + " ");
}
}
}시간 복잡도는 O(N)이 맞는거같은데 4번 5번 테스트 케이스에서 2초 가까이 뜨네용..
java
코딩-테스트
回答 1
봉우리 문제 질문입니다
0
73
2
씨름 선수 문제에서 각 선수의 몸무게나 키가 같을 수도 있다면?
0
58
0
이 코드랑 영상 코드중에 뭐가 더 좋은 코드인가요?
0
66
0
가중치 방향 그래프에서 가중치가 0인 간선을 표현하는 방법
0
64
1
좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ
0
77
2
6-7 강의에서
0
44
1
6-6. 장난꾸러기 질문 있습니다.
0
40
1
강의 수강후 코딩테스트
0
100
1
answer 변수 사용 여부
0
38
1
2중 for문
1
79
2
2-11. 임시반장정하기 (Runtime Error)
0
58
1
혹시 LinkedList 같은 자료 구조들은 따로 배우지 않나요?
0
64
1
이런 풀이는 어떨까요
0
38
1
자바 스트림 방식의 효율성 질문 드립니다.
0
50
1
알고리즘 자료 구조들..
0
54
1
StringBuilder vs BufferdWriter
0
42
1
원더랜드(프림)
0
42
1
이런 코드는 어떤가요?
0
54
1
bfs 풀이
0
50
1
병합정렬
0
51
1
26강 임시반장 정하기에서 질문이 있습니다
0
40
1
이번달말에 완강 후 공부 방향
0
67
1
제가 이런 코테가 처음인데 공부방법을..ㅠ
1
106
1
20강 소수 에라토스테네스의 체 런타임 에러가 뜹니다
0
45
1

