๊ทธ๋ฆผ ํ๋(with.Java)
โ๊ทธ๋ฆผ ํ๋โ ๋ฌธ์ ์ ๋ํ์ฌ ์์๋ณธ ๊ธ์ ๋๋ค.
์ฝ๋ฉ ํ ์คํธ ๋ฌธ์ ๋ฅผ ํ๋ฉฐ, ํ์๋ ๋ฌธ์ ์ ๋ํ ํ๊ณ ์ ๋ค๋ฅธ ํ์ด ๋ฐฉ๋ฒ์ ์์๋ณด๋ฉฐ, ์์๊ฐ๊ณ ์ ํฉ๋๋ค.
๋ฌธ์ ์ ๋ํด ๋จผ์ ์์๋ณด๊ฒ ์ต๋๋ค.
๋ฌธ์
์ง์ฌ๊ฐํ ํํ์ ๊ทธ๋ฆผ ํ์ผ์ด ์๊ณ , ์ด ๊ทธ๋ฆผ ํ์ผ์ 1 ร 1 ํฌ๊ธฐ์ ์ ์ฌ๊ฐํ ํฌ๊ธฐ์ ํฝ์ ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ด ๊ทธ๋ฆผ ํ์ผ์ ๋ํ๋ธ ๋ฌธ์์ด ๋ฐฐ์ด picture๊ณผ ์ ์ k๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด ๊ทธ๋ฆผ ํ์ผ์ ๊ฐ๋ก ์ธ๋ก๋ก k๋ฐฐ ๋๋ฆฐ ๊ทธ๋ฆผ ํ์ผ์ ๋ํ๋ด๋๋ก ๋ฌธ์์ด ๋ฐฐ์ด์ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์.
์ ์ถ๋ ฅ ์์
picture | k | result |
---|---|---|
[โx.xโ, โ.x.โ, โx.xโ] | 3 | [โxxxโฆxxxโ, โxxxโฆxxxโ, โxxxโฆxxxโ, โโฆxxxโฆโ, โโฆxxxโฆโ, โโฆxxxโฆโ, โxxxโฆxxxโ, โxxxโฆxxxโ, โxxxโฆxxxโ] |
๋ฌธ์ ์ ๋ํ ๋์ ํ์ด
class Solution {
public String[] solution(String[] picture, int k) {
int rows = picture.length;
int cols = picture[0].length();
String[] answer = new String[rows * k];
StringBuilder tempStr = new StringBuilder();
int count = 0;
for (String str : picture) {
for (int i = 0; i < str.length(); i++) {
char ch = str.charAt(i);
for (int j = 0; j < k; j++) {
tempStr.append(ch);
}
}
for (int j = 0; j < k; j++) {
answer[count++] = tempStr.toString();
}
tempStr.setLength(0);
}
return answer;
}
}
ํ์ด ์ค๋ช
int rows = picture.length;์ int cols = picture[0].length();: ์ฃผ์ด์ง picture ๋ฐฐ์ด์ ํ๊ณผ ์ด ์๋ฅผ ๊ณ์ฐํฉ๋๋ค.
String[] answer = new String[rows * k];: ๊ฒฐ๊ณผ๋ฅผ ์ ์ฅํ ์๋ก์ด ๋ฌธ์์ด ๋ฐฐ์ด answer๋ฅผ ์์ฑํฉ๋๋ค. ๋ฐฐ์ด์ ํฌ๊ธฐ๋ rows * k๊ฐ ๋ฉ๋๋ค.
StringBuilder tempStr = new StringBuilder();: ์์ ๋ฌธ์์ด์ ์ ์ฅํ๊ธฐ ์ํ StringBuilder ๊ฐ์ฒด tempStr์ ์์ฑํฉ๋๋ค.
int count = 0;: ๊ฒฐ๊ณผ ๋ฐฐ์ด answer์ ์ธ๋ฑ์ค๋ฅผ ์ถ์ ํ๊ธฐ ์ํ ๋ณ์ count๋ฅผ ์ด๊ธฐํํฉ๋๋ค.
for (String str : picture) : ์ฃผ์ด์ง picture ๋ฐฐ์ด์ ๊ฐ ๋ฌธ์์ด str์ ๋ํด ๋ฐ๋ณตํฉ๋๋ค.
for (int i = 0; i < str.length(); i++) : ๊ฐ ๋ฌธ์์ด str์ ๋ฌธ์๋ฅผ ๋ฐ๋ณตํ๋ฉด์:
๋ฌธ์ ch๋ฅผ ๊ฐ์ ธ์ต๋๋ค. ํด๋น ๋ฌธ์ ch๋ฅผ k๋ฒ ๋ฐ๋ณตํ์ฌ tempStr์ ์ถ๊ฐํฉ๋๋ค. for (int j = 0; j < k; j++) : ๋ฌธ์์ด tempStr์ k๋ฒ ๋ฐ๋ณตํ์ฌ answer ๋ฐฐ์ด์ ์ถ๊ฐํฉ๋๋ค.
tempStr.setLength(0);: ์์ ๋ฌธ์์ด tempStr์ ๋น์์ค๋๋ค.
return answer;: ์๋ก ์์ฑ๋ ๋ฌธ์์ด ๋ฐฐ์ด answer๋ฅผ ๋ฐํํฉ๋๋ค.