๐Ÿงฉ Algorithm/[BOJ] Bronze

BOJ 1284 : ์ง‘ ์ฃผ์†Œ (Java/๊ตฌํ˜„/Bronze 3)

devCloud 2024. 10. 12. 00:39
728x90

[๋ฌธ์ œ ๋งํฌ] ๐Ÿ‘‰ https://www.acmicpc.net/problem/1284


์„ค๋ช…

  1. ๊ฐ ์ˆซ์ž ์‚ฌ์ด์—๋Š” 1cm์˜ ์—ฌ๋ฐฑ์ด ๋“ค์–ด๊ฐ€์•ผํ•œ๋‹ค.
  2. 1์€ 2cm์˜ ๋„ˆ๋น„๋ฅผ ์ฐจ์ง€ํ•ด์•ผํ•œ๋‹ค. 0์€ 4cm์˜ ๋„ˆ๋น„๋ฅผ ์ฐจ์ง€ํ•ด์•ผํ•œ๋‹ค. ๋‚˜๋จธ์ง€ ์ˆซ์ž๋Š” ๋ชจ๋‘ 3cm์˜ ๋„ˆ๋น„๋ฅผ ์ฐจ์ง€ํ•œ๋‹ค.
  3. ํ˜ธ์ˆ˜ํŒ์˜ ๊ฒฝ๊ณ„์™€ ์ˆซ์ž ์‚ฌ์ด์—๋Š” 1cm์˜ ์—ฌ๋ฐฑ์ด ๋“ค์–ด๊ฐ€์•ผํ•œ๋‹ค.

์—ฌ๋ฐฑ์„ ํฌํ•จํ•œ ํ˜ธ์ˆ˜ํŒ์˜ ์ด ๋„ˆ๋น„๋ฅผ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค.

 

ํ’€์ด

  1. ๋ฌธ์ž์—ด๋กœ ์ˆซ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค.
  2. split() ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐฐ์—ด์— ์ €์žฅํ•œ๋‹ค.
  3. ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ๋ฐฐ์—ด์—์„œ ํ•˜๋‚˜์”ฉ ๊บผ๋‚ธ๋‹ค.
    • ๊ฐ ๋ฌธ์ž๋ฅผ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ  ๊ฐ ์กฐ๊ฑด์— ๋งž๊ฒŒ ๊ณ„์‚ฐํ•œ๋‹ค
    • ๊ณต๋ฐฑ์„ ํฌํ•จ์‹œ์ผœ์•ผ ํ•˜๋ฏ€๋กœ ์ˆซ์ž ๋„ˆ๋น„์— ๊ฐ 1์”ฉ ๋”ํ•ด์•ผ ํ•œ๋‹ค.

 

split() ๋ฉ”์„œ๋“œ

String[] nums = num.split("");

 

๋ถ„๋ฆฌํ•œ ๊ฒƒ์„ ๋ฐฐ์—ด์— ์ €์žฅํ•ด์•ผ ํ•œ๋‹ค. ์ธ์ž๋กœ ๋ฌด์Šจ ๊ธฐ์ค€์œผ๋กœ ๋ถ„๋ฆฌํ•  ๊ฒƒ์ธ์ง€๋ฅผ ๋„˜๊ธด๋‹ค. 

 

 

Integer.parseInt()

int intNum = Integer.parseInt(s);

 

๋ฌธ์ž์—ด์„ ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฉ”์„œ๋“œ์ด๋‹ค. ์ธ์ž๋กœ ๋ณ€ํ™˜ํ•  ๋ฌธ์ž๋‚˜ ๋ฌธ์ž์—ด์„ ๋„˜๊ฒจ์ฃผ๋ฉด ๋œ๋‹ค.

 

 

Solution

import java.io.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        //0์„ ์ž…๋ ฅํ•  ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณต
        while (true) {
            String num = br.readLine();
            if (num.equals("0")) {
                break;
            }
            int width = 1; //์ฒซ ๋ฒˆ์งธ ์—ฌ๋ฐฑ 1
            //์ˆซ์ž ๋ถ„๋ฆฌํ•˜๊ธฐ
            String[] nums = num.split("");
            for (String s : nums) { //๋‹ค์Œ ์—ฌ๋ฐฑ ํฌํ•จํ•ด์„œ + 1์”ฉ ๋”ํ•˜๊ธฐ
                int intNum = Integer.parseInt(s);
                if (intNum == 1) {
                    width += 3;
                } else if (intNum == 0) {
                    width += 5;
                } else {
                    width += 4;
                }
            }
            System.out.println(width);
        }
    }
}

 

 

๐Ÿ‘ฉ‍๐Ÿ’ป ํšŒ๊ณ 

๋ถ„๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ split ๋ง๊ณ ๋„ ๋งŽ๋‹ค.

์œ„ ์ฝ”๋“œ์—์„œ๋Š” ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•œ ํ›„์— ์กฐ๊ฑด์„ ๋”ฐ์กŒ๋Š”๋ฐ, ์ •์ˆ˜ํ˜•์œผ๋กœ ๋ณ€ํ™˜ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋ฌธ์ž๋กœ ์กฐ๊ฑด์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค.


 

728x90