MapleStory Finger Point Cute Line Smiley Blinking Hello Kitty Angel MapleStory Finger Point

๐Ÿƒ‍โ™€๏ธprogrammers/Java

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค java - k์˜ ๊ฐœ์ˆ˜ หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 6. 12. 11:22
์ฒด๊ฐ Level : โ˜…โ˜…โ˜†
Review: ์ˆซ์ž ์ž๋ฆฟ์ˆ˜ ๋น„๊ต๋ฒ•

 

๐Ÿ’ก 1๋ถ€ํ„ฐ 13๊นŒ์ง€์˜ ์ˆ˜์—์„œ, 1์€ 1, 10, 11, 12, 13 ์ด๋ ‡๊ฒŒ ์ด 6๋ฒˆ ๋“ฑ์žฅํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜ i, j, k๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, i๋ถ€ํ„ฐ j๊นŒ์ง€ k๊ฐ€ ๋ช‡ ๋ฒˆ ๋“ฑ์žฅํ•˜๋Š”์ง€ return

https://school.programmers.co.kr/learn/courses/30/lessons/120887

 

 

๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ”์„œ ๋น„๊ต  or  ์ˆซ์ž ์ž๋ฆฟ์ˆ˜ ๋งˆ๋‹ค ๋น„๊ต ? ๊ณ ๋ฏผํ–ˆ๋Š”๋ฐ

๋ฌธ์ž์—ด๋กœ ๋„์ „ํ•ด๋ดค๋‹ค.

 

1) ์ฃผ์–ด์ง„ ๋ฒ”์œ„ i ~ j ์˜ ์ˆซ์ž๋ฅผ ๋ฌธ์ž์—ด๋กœ ๋ณ€ํ™˜ํ•ด์„œ ๋ฐฐ์—ด์— ๋„ฃ์–ด์ค€๋‹ค.

2) ๋ฐฐ์—ด์„ ์ˆœํšŒํ•˜๋ฉด์„œ ํ•ด๋‹น๊ฐ’์˜ ์ž๋ฆฟ์ˆ˜ ํ•˜๋‚˜ํ•˜๋‚˜ k ์™€ ๊ฐ™์€์ง€

3) ๋น„๊ตํ•ด์ฃผ๊ณ  ๊ฐ™์œผ๋ฉด answer ++ 

 

class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;
        String[] arr = new String[j];
        
        
        // i๋ถ€ํ„ฐ j ๊นŒ์ง€ ๋ฌธ์ž์—ด ๋ณ€ํ™˜
        for (int a = i; a <= j; a++){
            arr[a-1] = String.valueOf(a);
        }
        
          for (int a = i-1; a <= j-1; a++){
              for (int b = 0; b < arr[a].length(); b++){
                  String s = arr[a].substring(b,b+1);
                  if (s.equals(String.valueOf(k))){
                      answer ++;
                  }
              }
          }
        
        

        
        return answer;
    }
}

 

 

 

[์ฐธ๊ณ ]

๋ฌธ์ž์—ด ์‚ฌ์šฉ ์—†์ด ํ‘ผ ์ฝ”๋“œ์ด๋‹ค. ๊ฐ„๊ฒฐํ•˜๊ณ  ์ข‹์€ ์ฝ”๋“œ !!

1) i~j ๊นŒ์ง€ ๋ฐ˜๋ณตํ•ด์ค€๋‹ค.

2) tmp ๊ฐ€ 0์ด ์•„๋‹๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค.

3) tmp์˜ ๋‚˜๋จธ์ง€ ๊ฐ’์ด k ๋ž‘ ๊ฐ™์œผ๋ฉด answer ++

4) tmp /= 10  ๊ณ„์†ํ•ด์„œ tmp ๋ฅผ ๋‚˜๋ˆ ์ฃผ๋ฉด์„œ ์ž๋ฆฟ์ˆ˜๋งˆ๋‹ค ๋น„๊ตํ•œ๋‹ค.

5) tmp ๊ฐ€ 0์ด๋˜๋ฉด ๋‹ค์Œ num ๊ฐ’์œผ๋กœ ๋„˜์–ด๊ฐ€๋ฉด์„œ ๋ฐ˜๋ณต.

class Solution {
    public int solution(int i, int j, int k) {
        int answer = 0;

        for (int num = i; num <= j; num++){
            int tmp = num;
            while (tmp != 0){
                if (tmp % 10 == k)
                    answer++;
                tmp /= 10;
            }
        }
        return answer;
    }
}