PS [5일차]

Daniel·2022년 7월 21일
0

PS

목록 보기
5/32
post-thumbnail

문제번호

2920

import java.util.Scanner;

class Main {
  public static void main (String[] args) {
    Scanner in = new Scanner(System.in);

    // 입력을 받게될 크기가 8인 정수형 배열 선언
    int [] arr = new int [8];

    // 배열에 수 입력 
    for (int i = 0 ;i < 8; i++) {
      arr [i] = in.nextInt();
    }
    
    // ascending인지 descending인지 mixed인지 판별하기 위한 변수 선언
    int a = 0;
    int d = 0;

    // 배열의 길이만큼 반복하여 배열의 값을 비교 후 카운트
    for (int i = 0 ;i < 7; i++) {
      if (arr[i] < arr[i+1]) 
        a++;
      if (arr[i] > arr[i+1]) 
        d++;
    }

    // 만약 순서대로 입력한 경우 ascending
    if (a == 7)
      System.out.println("ascending");
    // 반대 순서대로인 경우 descending
    else if (d == 7)
      System.out.println("descending");
    // 둘다 아니면 mixed
    else 
      System.out.println("mixed");
  }
}

TIL

문제

8개의 숫자가 오름차순인지 내림차순인지 섞여있는지 판볋는 문제이다.

풀이

  • 8개의 정수를 배열에 저장
  • 변수 a (ascending), d(descending)을 선언 후 반복문을 이용하여 현재와 바로 뒤의 원소를 비교하여 해당 변수를 증가
  • 만약 a와 d 둘 중 하나라도 값이 7 이라면 오름차순이거나 내림차순이다.
    • 그게 아니라면 순서가 섞여있는 것이다.

회고

한 2~3 개월 전 정렬문제에서 막혀서 포기했었다. 지금도 못 풀고 있는데 어제 인터넷에 백준을 검색해서 사용자들의 레이팅을 확인하게 되었다.

난 본인 티어 == 문제 티어로 알고 있었으나 아니였다. 레이팅 컷에는 생각보다 본인 티어에 비해 해결한 문제 난이도의 티어가 많이 낮았다.

그러니 혹시 자신이 백준 문제풀이를 하면서 티어 != 문제 티어 임을 알았으면 한다.

profile
폐쇄

0개의 댓글