๊ธฐ๋ก๋ฐฉ

BOJ_10610 : 30 ๋ณธ๋ฌธ

CodingTest/Java

BOJ_10610 : 30

Soom_1n 2023. 1. 16. 23:48

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

10610๋ฒˆ: 30

์–ด๋Š ๋‚ , ๋ฏธ๋ฅด์ฝ”๋Š” ์šฐ์—ฐํžˆ ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์–‘์ˆ˜ N์„ ๋ณด์•˜๋‹ค. ๋ฏธ๋ฅด์ฝ”๋Š” 30์ด๋ž€ ์ˆ˜๋ฅผ ์กด๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋Š” ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์ฐพ์€ ์ˆ˜์— ํฌํ•จ๋œ ์ˆซ์ž๋“ค์„ ์„ž์–ด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•œ

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ์ž…๋ ฅ๋œ ์ˆ˜์˜ ๊ฐ ์ž๋ฆฌ๋ฅผ ๋ฐ”๊ฟ” ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” 30์˜ ๋ฐฐ์ˆ˜์˜ ์ตœ๋Œ€๊ฐ’์„ ์ถœ๋ ฅํ•œ๋‹ค.
    • 30์˜ ๋ฐฐ์ˆ˜๋ฅผ ๋งŒ๋“ค์ง€ ๋ชปํ•˜๋ฉด -1์„ ์ถœ๋ ฅํ•œ๋‹ค.
  • 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด์„œ๋Š”, ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ˆ˜๊ฐ€ 0์ด ๋˜์•ผํ•˜๋ฉฐ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜์˜ ํ•ฉ์ด 3์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค.
    • ์ž…๋ ฅ๋œ ์ˆ˜๋ฅผ ์ž๋ฆฌ ์ˆ˜ ๋Œ€๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌํ•œ๋‹ค.
    • ๊ฐ ์ž๋ฆฌ์ˆ˜์˜ ํ•ฉ๊ณผ ๊ฐ€์žฅ ๋ ์ˆ˜๋ฅผ ํ™•์ธํ•œ๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.next();
        char[] charArr = s.toCharArray();

        Arrays.sort(charArr);
        s = new StringBuilder(new String(charArr)).reverse().toString();

        if (s.charAt(s.length() - 1) == '0') {
            long sum = 0;
            for (int i = 0; i < s.length(); i++) {
                sum += s.charAt(i) - '0';
            }
            if (sum % 3 == 0) {
                System.out.println(s);
            } else {
                System.out.println(-1);
            }
        } else {
            System.out.println(-1);
        }
    }
}

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • String์ž…๋ ฅ์„ to.CharArray๋ฅผ ์ด์šฉํ•ด charํ˜• ๋ฐฐ์—ด๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.
  • charํ˜• ๋ฐฐ์—ด์„ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ ํ›„, ๋’ค์ง‘์–ด String์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
  • ๋ ์ˆ˜๊ฐ€ 0์ด๋ฉฐ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜์˜ ํ•ฉ์ด 3์˜ ๋ฐฐ์ˆ˜์ด๋ฉด ํ•ด๋‹น ๋ฌธ์ž์—ด์„, ์•„๋‹ˆ๋ผ๋ฉด -1์„ ์ถœ๋ ฅํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • 30์˜ ๋ฐฐ์ˆ˜ ์ค‘ ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ์ฐพ๋Š” ๋ฌธ์ œ์˜€๋Š”๋ฐ, 30์˜ ๋ฐฐ์ˆ˜ ์กฐ๊ฑด 2๊ฐ€์ง€์™€ ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ๊ฐ™์ด ์ ์šฉํ•˜๋Š”๊ฒŒ ํ‚ค ํฌ์ธํŠธ ๊ฐ™๋‹ค.

728x90