Algorithm/BOJ(Baekjoon Online Judge)

[백준 17294번] 귀여운 수~ε٩(๑> ₃ <)۶з - Java //Wello Horld//

koucop 2019. 6. 27. 17:34

BOJ에서 최근에 나온 문제중에 핫한 문제가 있어서 들고왔습니다

일단 문제자체는 매우 간단하네요

정수 K 가 입력으로 주어지고

등차수열이면 "◝(⑅•ᴗ•⑅)◜..°♡ 뀌요미!!" 를

등차수열이 아니면 "흥칫뿡!! <( ̄ ﹌  ̄)>" 을 출력하면 되는 문제네요

그러면 한번 풀어볼까요

일단 입력을 String으로 받아와서 각 자릿수를 비교하는게 좋겠군요

BufferedReader 을 이용해서 정수를 먼저 문자열로 받아오고, 등차값 r, 비교할 두개의 정수 a, b 와 체크해주기 위한 boolean값 chk 을 지정해줍니다

이렇게 지정해주면 그 이후는 a 와 b 를 비교해주면서 등차이면 chk를 false로 등차가 아니면 true로 해서 출력해주면 되겠습니다

import java.io.*;
import java.util.*;

public class sample {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
        int r = 0;
        int a = Integer.parseInt(String.valueOf(line.charAt(0)));
        boolean chk = true;
        if (line.length() > 2) {
            for (int i = 1; i < line.length(); i++) {
                int b = Integer.parseInt(String.valueOf(line.charAt(i)));
                if (i == 1)
                    r = b - a;
                else {
                    if (b - a != r) {
                        chk = false;
                    }
                }
                a = b;
            }   
        }
        if(chk){
            System.out.println("◝(⑅•ᴗ•⑅)◜..°♡ 뀌요미!!");
        }else {
            System.out.println("흥칫뿡!! <( ̄ ﹌  ̄)>");
        }
        br.close();
    }
}

더 짧게 만들 수도 있을 것 같은데,,, 귀찮은 관계로 패스!!

 

문제 : https://www.acmicpc.net/problem/17294