728x90
반응형
- 로또 번호 검출기
문제 설명
로또복권의 번호는 1에서 45 사이의 값을 가진 6개의 숫자로 구성됩니다.
로또복권을 신청하는 사용자들은 OMR카드에 숫자를 마킹하여 신청을 하는데, 가끔 잘못 표시하여 신청하
는 사용자들이 있습니다.
로또복권에 등록 가능한 숫자조합인지 확인하는 기능을 작성해 주세요
입력1: [4, 7, 32, 43, 22, 19]
출력1: true
6개의 숫자가 중복없이 1~45사이의 값을 가지고 로또복권 등록이 가능합니다.
입력2: [3, 19, 34, 39, 39, 20]
출력 2: false
6개의 숫자 중 39가 중복되어 로또복권 등록이 불가능합니다.
입출력 예
입력1: [4, 7, 32, 43, 22, 19]
출력1: true
입력2: [3, 19, 34, 39, 39, 20]
출력 2: false
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
//로또번호 검출기
//1~45에서 6자리, 중복없이
public class Solution {
public static void main(String[] args) {
Scanner kb = new Scanner(System.in);
int[] arr = {4,7,32,43,22,19};
//int[] arr = { 3, 19, 34, 39, 39, 20 };
System.out.println(solution(arr));
}
static boolean solution(int[] arr) {
Set<Integer> set = new HashSet<>();
for (int x : arr) {
if (x >= 1 && x <= 45)
set.add(x);
}
if(set.size()==arr.length)
return true;
else
return false;
}
}
+) 세련된 풀이
import java.util.*;
class Solution {
public boolean solution(int[] lotto) {
Set<Integer> set = new HashSet<>();
for(int l : lotto){
if(l < 1 || l > 45) return false;
set.add(l);
}
return set.size() == lotto.length;
}
}
728x90
반응형
'Java > Java 알고리즘 프로그래머스' 카테고리의 다른 글
[Set] 03. 같은 숫자는 싫어 (0) | 2022.08.04 |
---|---|
[Set] 02. 끝말잇기 # (0) | 2022.08.04 |
[Map] 03. 위장 ## (0) | 2022.08.04 |
[Map] 02. 완주하지 못한 선수 (+ 두 가지 풀이) (0) | 2022.08.04 |
[Map] 01. 폰켓몬 (+ HashSet) (0) | 2022.08.04 |