Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- #프로그래머스 #코딩 #배열만들기3
- #프로그래머스 #코딩 #자바 #문자열이몇번등장하는지세기
- #프로그래머스
- #프로그래머스 #코딩 #자바 #수열과구간쿼리3
- #프로그래머스 #코딩 #자바 #빈배열에추가삭제하기
- #프로그래머스 #코딩 #배열원소 삭제하기
- springboot #스프링부트 #junit #junit #제이유닛 #단위테스트코드 #테스트 #test #test
- #프로그래머스 #코딩 #l로만들기
- #프로그래머스 #코딩 #자바 #리스트자르기
- springboot #sprinigbatch #job #step #스프링부트배치 #스프링배치
- #프로그래머스 #자바 #코딩 #전국대회선발
- #프로그래머스 #코딩 #문자열뒤집기 #자바
- #프로그래머스 #코딩 #자바 #문자열여러번뒤집기
- #프로그래머스 #코딩 #x사이의개수
- #프로그래머스 #자바 #코딩 #무작위로k개의수뽑기
- #프로그래머스 #코딩 #자바 #수열과구간쿼리2
- #프로그래머스 #코딩 #자바 #수열과구간쿼리1
- #프로그래머스 #코딩 #자바 #왼쪽오른쪽
- #프로그래머스 #자바 #코딩 #특정문자열로끝나는가장긴부분문자열찾기
- #springbatch #springboot #스프링배치 #스프링부트 #배치 #joblauncher #job #step #itemreader #itemprocessor #itemwriter
- #프로그래머스 #코딩 #자바 #문자열묶기
- #springbatch #springboot #스프링배치 #스프링부트 #배치 #joblauncher #job #step #batchconfig #배치설정 #chunk
- #프로그래머스 #코딩 #자바 #2의영역
- 코딩 #자바 #조건에맞게수열변환하기2
- springboot #스프링부트 #junit #제이유닛 #라이프사이클 #@beforeall #@beforeeach #@afterall #@aftereach
- #프로그래머스 #자바 #코딩 #배열만들기2
- #batch #스케줄러 #배치스케줄러
- #프로그래머스 #코딩 #글자지우기 #자바
- #신념 #철학 #유쾌함 #후회 #자책
- #프로그래머스 #코딩 #문자열잘라서정렬하기
Archives
- Today
- Total
David의 블로그
프로그래머스 - 무작위로 K개의 수 뽑기 본문
반응형
문제 설명>
랜덤으로 서로 다른 k개의 수를 저장한 배열을 만드려고 합니다. 적절한 방법이 떠오르지 않기 때문에 일정한 범위 내에서 무작위로 수를 뽑은 후, 지금까지 나온적이 없는 수이면 배열 맨 뒤에 추가하는 방식으로 만들기로 합니다.
이미 어떤 수가 무작위로 주어질지 알고 있다고 가정하고, 실제 만들어질 길이 k의 배열을 예상해봅시다.
정수 배열 arr가 주어집니다. 문제에서의 무작위의 수는 arr에 저장된 순서대로 주어질 예정이라고 했을 때, 완성될 배열을 return 하는 solution 함수를 완성해 주세요.
단, 완성될 배열의 길이가 k보다 작으면 나머지 값을 전부 -1로 채워서 return 합니다.
내 생각>
arr벼열내의 원소들의 중복갑슬 없애주고, k만큼 for문을 순회하여 값을 넣어준다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
// 무작위로 K개의 수 뽑기
// [0, 1, 1, 2, 2, 3] 3 [0, 1, 2]
// [0, 1, 1, 1, 1] 4 [0, 1, -1, -1]
int[] arr = {0, 1, 1, 1, 1};
int k = 4;
int[] answer = new int[k];
arr = Arrays.stream(arr).distinct().toArray();
if (arr.length >= answer.length) {
for (int i = 0; i < answer.length; i++) {
answer[i] = arr[i];
}
} else if (arr.length < k) {
for (int i = 0; i < answer.length; i++) {
if (arr.length <= i) {
answer[i] = -1;
} else {
answer[i] = arr[i];
}
}
}
System.out.println(Arrays.toString(answer));
|
cs |
반응형
'프로그래밍 > 코딩' 카테고리의 다른 글
프로그래머스 - 배열 만들기2 (0) | 2024.07.01 |
---|---|
프로그래머스 - 전국 대회 선발 (0) | 2024.07.01 |
프로그래머스 - 수열과 구간 쿼리2 (0) | 2024.07.01 |
프로그래머스 - 문자열 여러 번 뒤집기. (0) | 2024.06.30 |
프로그래머스 - 왼쪽 오른쪽 (0) | 2024.06.30 |