๊ธฐ๋ก๋ฐฉ

Lv.2 : ๋ฌธ์ž์—ด ๋‚˜๋ˆ„๊ธฐ ๋ณธ๋ฌธ

CodingTest/Java

Lv.2 : ๋ฌธ์ž์—ด ๋‚˜๋ˆ„๊ธฐ

Soom_1n 2023. 4. 17. 13:40

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

 

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

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

programmers.co.kr



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

  • ๋ฌธ์ž์—ด S๊ฐ€ ์ž…๋ ฅ๋œ๋‹ค.
  • ์ฒซ ๋ฌธ์ž๋ถ€ํ„ฐ ์นด์šดํŠธํ•ด์„œ ์ฒซ ๋ฌธ์ž๋“ค์˜ ์ˆ˜์™€ ๊ทธ ์™ธ์˜ ๋ฌธ์ž๋“ค์˜ ์ˆ˜๊ฐ€ ๊ฐ™์•„์งˆ ๋•Œ ๊นŒ์ง€ ์ž˜๋ผ๋‚ธ๋‹ค.
  • ์ž˜๋ผ์ง„ ๋ฌธ์ž์—ด์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

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

class Solution {
    public int solution(String s) {
        int answer = 0;
        int size = s.length();
        
        int idx = 0;
        while(idx < size) {
            char c = s.charAt(idx);
            int a = 1;
            int b = 0;
            while(++idx < size) {
                if(s.charAt(idx) == c) a ++;
                else b ++;
                if (a == b) break;
            }
            idx++;
            answer++;
        }
        
        return answer;  
    }
}

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

  • idx๋ฅผ s์˜ ๊ฐ ๋ฌธ์ž๋ฅผ ๋ชจ๋‘ ์ˆœํšŒ ํ•  ๋•Œ๊นŒ์ง€ ๊ณ„์‚ฐ์„ ๋ฐ˜๋ณตํ•œ๋‹ค.
    • ์ฒซ ๋ฌธ์ž๋ฅผ ๊บผ๋‚ด๊ณ , ์ฒซ ๋ฌธ์ž์™€ ๊ฐ™์€ ๋ฌธ์ž๋“ค์˜ ์ˆ˜ a, ๋‹ค๋ฅธ ๋ฌธ์ž๋“ค์˜ ์ˆ˜ b๋ฅผ ๋ˆ„์ ํ•œ๋‹ค.
    • s์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๊ฑฐ๋‚˜, a์™€ b๊ฐ€ ๊ฐ™์•„์งˆ ๋•Œ ๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์•ˆ์ชฝ while๋ฌธ์—์„œ a==b ๋กœ break๋ฅผ ๊ฑธ์ง€ ์•Š๊ณ , while๋ฌธ ์กฐ๊ฑด์œผ๋กœ ๋„ฃ์—ˆ์œผ๋ฉด ๋” ๊น”๋”ํ–ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

728x90