java
길이 N의 순열이란, 1부터 N까지의 자연수를 적당한 순서로 섞어서 만든 수열을 의미한다.
예를 들면, (3, 4, 1, 2)는 길이 4의 순열이다.
(2, 3, 4, 4, 5)는 길이가 5이지만 1부터 5까지의 자연수를 적당한 순서로 섞어서 만들 수 없기 때문에 순열이 아니다.
어떤 길이 N의 수열이 주어지면, 이것이 길이 N의 순열인지 판단하여라.
HashSet을 활용해 문제를 풀었다.
어렵지 않게 해결한 문제
import java.util.Scanner;
import java.io.FileInputStream;
import java.util.HashSet;
import java.util.Set;
class Solution
{
public static void main(String args[]) throws Exception
{
Scanner sc = new Scanner(System.in);
int T;
T=sc.nextInt();
for(int test_case = 1; test_case <= T; test_case++)
{
int N = sc.nextInt();
Set<Integer> set = new HashSet<>();
boolean isPermutation = true;
for (int i = 0; i < N; i++) {
int num = sc.nextInt();
if (num < 1 || num > N || !set.add(num)) {
isPermutation = false;
}
}
System.out.println("#" + test_case + " " + (isPermutation ? "Yes" : "No"));
}
}
}
JavaObject 란? 자바에서 Object 클래스는 모든 클래스의 최상위 부모 클래스입니다. 모든 자바 클래스는 명시적으로 다른…
SWEA 10570 제곱 팰린드롬 수 문제 정보 문제 링크 문제 출처 : SW Expert Academy…