11736. 평범한 숫자 D3
[문제]
1 이상 N 이하의 정수가 적혀 있는 길이 N의 순열 p1, p2, …, pN이 있다. 수열에 있는 모든 숫자는 서로 다르다. 2 ≤ i ≤ N-1이며, pi-1, pi, pi+1 중 pi가 최솟값도, 최댓값도 아니라면 pi를 평범한 숫자라고 정의한다. 주어진 순열에서 평범한 숫자의 개수는 몇 개인가?
[입력]
첫 번째 줄에 테스트 케이스의 수 TC가 주어진다. 이후 TC개의 테스트 케이스가 새 줄로 구분되어 주어진다. 각 테스트 케이스는 다음과 같이 구성되었다.
∙ 첫 번째 줄에 정수 N 이 주어진다. (3 ≤ N ≤ 20)
∙ 이후 N개의 정수 pi가 주어진다. (3 ≤ pi ≤ N) 모든 pi는 서로 다르다.
[출력]
각 테스트 케이스마다 정답을 출력하라.
입력
2 3 1 3 2 5 1 3 5 4 2 |
출력
#1 0 #2 2 |
[코드]
import java.io.*;
import java.util.*;
public class Solution{
public static void main(String[] args) throws IOException{
BufferedReader br= new BufferedReader(new InputStreamReader(System.in));
int T=Integer.parseInt(br.readLine());
for (int i = 1; i <= T; i++) {
int A=Integer.parseInt(br.readLine());
int arr[]=new int[A];
StringTokenizer st = new StringTokenizer(br.readLine());
for (int i2 = 0; i2 < A; i2++) {
int N=Integer.parseInt(st.nextToken());
arr[i2]=N;
}
int total=0;
for (int i3 = 0; i3 < A-2; i3++) {
if(arr[i3+1]>arr[i3]) {
if (arr[i3+1]<arr[i3+2]) {
total++;
}
}
if(arr[i3+1]<arr[i3]) {
if (arr[i3+1]>arr[i3+2]) {
total++;
}
}
}
System.out.println("#"+i+" "+total);
}
br.close();
}
}
'SWEA(SWExpertacAdemy)' 카테고리의 다른 글
[SWEA] 5515. 2016년 요일 맞추기 D3 (자바) (1) | 2025.05.19 |
---|---|
[swea] 7510. 상원이의 연속 합 D3 (자바) (0) | 2025.05.18 |
[swea] 13547. 팔씨름 D3 (자바) (0) | 2025.05.18 |
[swea] 23003. 색상환 D3 (자바) (0) | 2025.05.18 |
[swea] 7532. 세영이의 SEM력 연도 D3 (자바) (0) | 2025.05.18 |