๐ฅ
https://programmers.co.kr/learn/courses/30/lessons/12916?language=java#
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ๋ฌธ์์ด ๋ด p์ y์ ๊ฐ์
๋๋ฌธ์์ ์๋ฌธ์๊ฐ ์์ฌ์๋ ๋ฌธ์์ด s๊ฐ ์ฃผ์ด์ง๋๋ค. s์ 'p'์ ๊ฐ์์ 'y'์ ๊ฐ์๋ฅผ ๋น๊ตํด ๊ฐ์ผ๋ฉด True, ๋ค๋ฅด๋ฉด False๋ฅผ return ํ๋ solution๋ฅผ ์์ฑํ์ธ์. 'p', 'y' ๋ชจ๋ ํ๋๋ ์๋ ๊ฒฝ์ฐ๋ ํญ์ True๋ฅผ
programmers.co.kr
๋ฌธ์ ์ค๋ช
๋๋ฌธ์์ ์๋ฌธ์๊ฐ ์์ฌ์๋ ๋ฌธ์์ด s๊ฐ ์ฃผ์ด์ง๋๋ค. s์ 'p'์ ๊ฐ์์ 'y'์ ๊ฐ์๋ฅผ ๋น๊ตํด ๊ฐ์ผ๋ฉด True, ๋ค๋ฅด๋ฉด False๋ฅผ return ํ๋ solution๋ฅผ ์์ฑํ์ธ์. 'p', 'y' ๋ชจ๋ ํ๋๋ ์๋ ๊ฒฝ์ฐ๋ ํญ์ True๋ฅผ ๋ฆฌํดํฉ๋๋ค. ๋จ, ๊ฐ์๋ฅผ ๋น๊ตํ ๋ ๋๋ฌธ์์ ์๋ฌธ์๋ ๊ตฌ๋ณํ์ง ์์ต๋๋ค.
์๋ฅผ ๋ค์ด s๊ฐ "pPoooyY"๋ฉด true๋ฅผ returnํ๊ณ "Pyy"๋ผ๋ฉด false๋ฅผ returnํฉ๋๋ค.
์ ํ์ฌํญ- ๋ฌธ์์ด s์ ๊ธธ์ด : 50 ์ดํ์ ์์ฐ์
- ๋ฌธ์์ด s๋ ์ํ๋ฒณ์ผ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์sanswer
"pPoooyY" | true |
"Pyy" | false |
์
์ถ๋ ฅ ์ #1
'p'์ ๊ฐ์ 2๊ฐ, 'y'์ ๊ฐ์ 2๊ฐ๋ก ๊ฐ์ผ๋ฏ๋ก true๋ฅผ return ํฉ๋๋ค.
์
์ถ๋ ฅ ์ #2
'p'์ ๊ฐ์ 1๊ฐ, 'y'์ ๊ฐ์ 2๊ฐ๋ก ๋ค๋ฅด๋ฏ๋ก false๋ฅผ return ํฉ๋๋ค.
โป ๊ณต์ง - 2021๋ 8์ 23์ผ ํ ์คํธ์ผ์ด์ค๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
๐ฅ [๋ก์ง]
p์ ๊ฐ์๋ฅผ ์ธ๋ ๋ณ์์ธ pCnt, y์ ๊ฐ์๋ฅผ ์ธ๋ ๋ณ์์ธ yCnt๋ฅผ ์ ์ธํ๋ค.
s์ ๊ธธ์ด๋งํผ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋ฉด์ ํด๋น ์ธ๋ฑ์ค๋ฒ์งธ์ char๊ฐ์ด p,P์ด๋ฉด pCnt๋ฅผ ์ฆ๊ฐ, y,Y์ด๋ฉด yCnt๊ฐ์ ์ฆ๊ฐํ๋ค.
๋ฐ๋ณต๋ฌธ์ด ๋๋ ํ ๋ ์ซ์๊ฐ ๊ฐ์์ง ๋น๊ตํ๊ณ ๊ฐ์ผ๋ฉด true, ๋ค๋ฅด๋ฉด false๋ฅผ ๋ฆฌํดํ๋ค.
๐ฅ [์ต์ข ์ฝ๋]
class Solution {
boolean solution(String s) {
boolean answer = true;
System.out.println(s);
int pCnt = 0;
int yCnt = 0;
for(int i = 0; i < s.length(); i++) {
if(s.charAt(i) == 'p' || s.charAt(i) == 'P')
pCnt++;
else if(s.charAt(i) == 'y' || s.charAt(i) == 'Y')
yCnt++;
}
if(pCnt != yCnt)
answer = false;
return answer;
}
}
๐ฅ [์๊ฐ]
๋ค๋ฅธ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๊ณ ์ด๋ ๊ฒ ๋ค๋ฅด๊ฒ ์ ๊ทผํ ์๋ ์๊ตฌ๋ ํ๋ ๊ฒ์ ๋๊ผ๋ค.
1. pCnt์ yCnt๊ฐ ๊ฒฐ๊ตญ ๊ฐ์์ผ ํ๋๊ฒ์ ์ฃผ๋ชฉํ ์์ด๋์ด
-> i๋ผ๋ ๊ณตํต๋ณ์๋ฅผ ์ ์ธํด p์ธ๊ฒฝ์ฐ +1, y์ธ๊ฒฝ์ฐ -1์ ๊ฐ๊ฐ ๋ํด ์ต์ข i์ ๊ฐ์ด 0์ด๋ฉด true, 0์ด ์๋๋ฉด false๋ฅผ ๋ฆฌํดํ๋ค.
2. ์ ๊ท์์ ์ด์ฉํ ์์ด๋์ด
-> ๋ฌธ์์ด์์ y,Y๊ฐ ์๋ ๊ฒฝ์ฐ ๋ชจ๋ ""์ผ๋ก ๋์ฒดํด์ ๊ทธ ์นด์ดํธ๋ฅผ ์ธ๊ณ ๊ฐ๊ฐ ๋น๊ต
return s.replaceAll("[^yY]", "").length() - s.replaceAll("[^pP]", "").length() == 0
๊ฐ์ธ์ ์ผ๋ก๋ ์ ๊ท์์ ๋ฐฉ์์ด ๋ ํนํด์ ๊ธฐ์ต์ ๋จ์๋ค.
๋ถ์กฑํ ์ ํผ๋๋ฐฑ ์ฃผ์๋ฉด ์์ผ๋ก์ ํฌ์คํ ์ ๋ฐ์ํ๊ฒ ์ต๋๋ค! ๋ด์ฃผ์ ์ ์ ๋ง ๊ฐ์ฌํฉ๋๋ค :)
-budtree