Teddy Bear Holding A Heart Balloon [๊ธฐ์ดˆ] ์„ธ๋กœ ์ฝ๊ธฐ
๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿฅ‡ Coding Test/์˜ค๋‹ต๋…ธํŠธ

[๊ธฐ์ดˆ] ์„ธ๋กœ ์ฝ๊ธฐ

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

 

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

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

programmers.co.kr

[ ๋ฌธ์ œ์„ค๋ช… ]

๋ฌธ์ž์—ด my_string๊ณผ ๋‘ ์ •์ˆ˜ mc๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. my_string์„ ํ•œ ์ค„์— m ๊ธ€์ž์”ฉ ๊ฐ€๋กœ๋กœ ์ ์—ˆ์„ ๋•Œ ์™ผ์ชฝ๋ถ€ํ„ฐ ์„ธ๋กœ๋กœ c๋ฒˆ์งธ ์—ด์— ์ ํžŒ ๊ธ€์ž๋“ค์„ ๋ฌธ์ž์—ด๋กœ return ํ•˜๋Š” solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”.

[ ํ’€์ด๊ณผ์ • ]

class Solution {
    public String solution(String my_string, int m, int c) {
        String answer = "";
        String[] mstr = my_string.split(""); //my_string ์ชผ๊ฐœ์„œ mstr๋ฐฐ์—ด์— ๋‹ด๊ธฐ
        String[][] str = new String[my_string.length()/m][m];
        //2์ฐจ์› ๋ฐฐ์—ด str์„ ์–ธ
        //ํ–‰๊ธธ์ด = my_string๋ฌธ์ž์—ด์„ m์œผ๋กœ ๋‚˜๋ˆˆ ๋ชซ
        //์—ด๊ธธ์ด = m
        
        int index = 0;
        for (int i=0; i<str.length; i++) { //์ด์ค‘ for๋ฌธ์œผ๋กœ 2์ฐจ์›๋ฐฐ์—ด ์ˆœํšŒ
            for (int j=0; j<str[0].length; j++) {
                str[i][j] = mstr[index++]; //mstr์›์†Œ๋“ค ์ฐจ๋ก€๋Œ€๋กœ ๋„ฃ๊ธฐ
            }
        }
        
        for (int i=0; i<str.length; i++) { //for๋ฌธ์œผ๋กœ 2์ฐจ์›๋ฐฐ์—ด ํ–‰ ์ˆœํšŒํ•˜๋ฉด์„œ
            answer += str[i][c-1]; //์ •๋‹ต๋ฐฐ์—ด์— c์—ด(c-1์ธ๋ฑ์Šค) ์›์†Œ๋“ค ๋„ฃ์–ด์ฃผ๊ธฐ
        }
        
        return answer;
    }
}

[ ๋‹ค๋ฅธํ’€์ด ]

class Solution {

    public String solution(String my_string, int m, int c) {
        String answer = "";

        for (int i = c - 1; i < my_string.length(); i += m) {
        //2์ฐจ์›๋ฐฐ์—ด ์„ ์–ธํ•  ํ•„์š”์—†์ด c-1์ธ๋ฑ์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€ m๊ฐ„๊ฒฉ์œผ๋กœ ๋„ฃ์–ด์ฃผ๋ฉด ๋˜๋Š”๊ตฐ...
            answer += my_string.charAt(i);
        }
        return answer;
    }
}