๊ธฐ๋ก๋ฐฉ

Lv.2 : ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ ๋ณธ๋ฌธ

CodingTest/Java

Lv.2 : ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ

Soom_1n 2023. 9. 5. 23:09

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

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr



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

  • ์—ด๋ฆฐ ๊ด„ํ˜ธ( '(' )์™€ ๋‹ซํžŒ ๊ด„ํ˜ธ( ')' ) ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด s๋ฅผ ์ž…๋ ฅ๋ฐ›๋Š”๋‹ค.
  • ์—ด๋ฆฐ ๊ด„ํ˜ธ์™€ ๋‹ซํžŒ ๊ด„ํ˜ธ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์Œ์„ ์ด๋ฃจ๋Š” ๋ฌธ์ž์—ด์ธ์ง€ ํŒ๋‹จํ•ด true๋‚˜ false๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ”ธ ๋ฌธ์ œ ํ’€์ด ๐Ÿ”ธ

  • ์ „ํ˜•์ ์ธ ์Šคํƒํ˜• ๋ฌธ์ œ์ง€๋งŒ, ์Šคํƒ์œผ๋กœ ํ’€๋ฉด ๋น„ํšจ์œจ์ ์ด๋‹ค.
  • ์—ด๋ฆฐ ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ค๋ฉด ์นด์šดํŠธ๋ฅผ +1ํ•œ๋‹ค.
  • ๋‹ซํžŒ ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ค๋ฉด ์นด์šดํŠธ๋ฅผ -1ํ•œ๋‹ค.
  • ์นด์šดํŠธ๊ฐ€ ์Œ์ˆ˜๊ฐ€ ๋˜๋ฉด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๋ฌธ์ž์—ด์ด๋‹ค. 

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

class Solution {
    boolean solution(String s) {
        boolean answer = true;
        int left = 0;

        for(int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            if(c == '(') {
                left++;
            } else {
                if(left == 0) {
                    answer = false;
                    break;
                }
                left--;
            }
        }
        
        if(left > 0) answer = false;
        
        return answer;
    }
}

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

  • ๋ฌธ์žs๋ฅผ chatAt์œผ๋กœ ๋ฌธ์ž๋ฅผ ํ•˜๋‚˜์”ฉ ๊ฒ€์‚ฌํ•œ๋‹ค.
  • ์—ด๋ฆฐ ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ค๋ฉด ์นด์šดํŠธ๋ฅผ +1ํ•œ๋‹ค.
  • ๋‹ซํžŒ ๊ด„ํ˜ธ๊ฐ€ ๋‚˜์˜ค๋ฉด ์นด์šดํŠธ๋ฅผ -1ํ•œ๋‹ค.
    • ์—ด๋ฆฐ ๊ด„ํ˜ธ๊ฐ€ 0์ด๋ผ๋ฉด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ false๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • ๋งŒ์•ฝ ๋ฌธ์ž์—ด์„ ๋ชจ๋‘ ๊ฒ€์‚ฌํ–ˆ๋Š”๋ฐ, ์นด์šดํŠธ๊ฐ€ 0๋ณด๋‹ค ํฌ๋‹ค(์—ด๋ฆฐ ๊ด„ํ˜ธ๊ฐ€ ๋‚จ์•„์žˆ๋‹ค)๋ฉด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์€ ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ false๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์Šคํƒ ๋ฌธ์ œ๋กœ ์•„์ฃผ ์œ ๋ช…ํ•œ ์œ ํ˜•์ด์ง€๋งŒ, ์Šคํƒ์„ ์“ธ ํ•„์š”๋„ ์—†๋˜ ๋ฌธ์ œ์˜€๋‹ค.
  • ๋‹ซํžŒ ๊ด„ํ˜ธ์—์„œ left๊ฐ€ 0์ธ์ง€ ํ™•์ธํ•˜๋Š” ์ค‘์ฒฉ ์กฐ๊ฑดํ˜•์‹์ด ๋ณ„๋กœ ๊น”๋”ํ•˜์ง€ ๋ชปํ•œ ๊ฒƒ ๊ฐ™๋‹ค.
    • ์—ด๋ฆฐ ๊ด„ํ˜ธ๋ฉด ๋ฌด์กฐ๊ฑด ์นด์šดํŠธ +1, ๋‹ซํžŒ ๊ด„ํ˜ธ๋ฉด ๋ฌด์กฐ๊ฑด ์นด์šดํŠธ -1์„ ํ•˜๊ณ , ์นด์šดํŠธ๊ฐ€ ์Œ์ˆ˜์— ๊ฐ€๋ฉด false๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ˜•์‹์ด ์ œ์ผ ๊น”๋”ํ•œ ๊ฒƒ ๊ฐ™๋‹ค.

728x90