개발/Coding Test - Java
[Java] 프로그래머스 코딩테스트 - 두 개의 수로 특정값 만들기 (해시)
seopport
2024. 8. 15. 14:57
728x90
반응형
문제 설명
- n개의 양의 정수로 이루어진 배열 arr와 정수 target이 주어졌을 때 이 중에서 합이 target인 두 수가 arr에 있는지 찾고, 있으면 true, 없으면 false를 반환하는 solution() 함수를 작성하세요.
제한 조건
- n 은 2 이상 10,000 이하의 자연수입니다.
- arr 의 각 원소는 1 이상 10,000 이하의 자연수입니다.
- arr 의 원소 중 중복되는 원소는 없습니다.
- target 은 1 이상 20,000 이하의 자연수입니다.
입출력 예
arr | target | return |
[1, 2, 3, 4, 8] | 6 | true |
[2, 3, 5, 9] | 10 | false |
코드
import java.util.*;
class Solution {
public boolean solution(int[] arr ,int target) {
HashSet<Integer> hs = new HashSet<>();
for(int i : arr) {
if(hs.contains(target - i)) return true;
hs.add(i);
}
return false;
}
}
728x90
반응형