Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
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
Archives
Today
Total
관리 메뉴

시간이 NullNull

[JAVA] [SWEA] 9940. 순열1 본문

알고리즘

[JAVA] [SWEA] 9940. 순열1

4NIng 2020. 5. 13. 14:33

길이 N의 순열이란, 1부터 N까지의 자연수를 적당한 순서로 섞어서 만든 수열을 의미한다.
예를 들면, (3, 4, 1, 2)는 길이 4의 순열이다
.
(2, 3, 4, 4, 5)는 길이가 5이지만 1부터 5까지의 자연수를 적당한 순서로 섞어서 만들 수 없기 때문에 순열이 아니다
.
어떤 길이 N의 수열이 주어지면, 이것이 길이 N의 순열인지 판단하여라.

 

너무 간단하다.. 컴파일러 없이도 그냥 메모장에 코딩하고 그대로 붙여서 제출하여도 통과할만큼

 

이건 D1, D2 문제이라 해도 믿을 것이다....

 

사실상 순열이라고 하였지만 N을 입력받으면 1~N까지 숫자가 다 있는지 확인만 해주면 끝나는 문제이다....

 

그래서 설명이랄 것도 없다....

 

코드를 보세요...

 

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class Solution {
	public static void main(String[] args) throws Exception{		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		int T = Integer.parseInt(br.readLine());
		for(int t=1; t<=T; ++t) {
			int n = Integer.parseInt(br.readLine());
			String result = "Yes";
            String[] str = br.readLine().split(" ");
            boolean[] arr = new boolean[n+1];
            for(int i=0; i<n; ++i){
                int num = Integer.parseInt(str[i]);
                arr[num] = true;
            }
            for(int i=1; i<n+1; ++i){
                if(!arr[i]){
                    result = "No";
                    break;
                }
            }
			bw.write("#"+t+" "+result+"\n");
		}
		bw.close();
		br.close();
	}
}
Comments