[PS] 99ํด๋ฝ ์ฝํ ์คํฐ๋ 20์ผ์ฐจ TIL (ํฐ ์ ๋ง๋ค๊ธฐ)
ํ๊ทธ: 99ํด๋ฝ, PS, TIL, ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ, ์ฝ๋ฉํ ์คํธ์ค๋น, ํญํด99
์นดํ ๊ณ ๋ฆฌ: PS
![]()
๋ฌธ์

์ค๋ช
์ซ์๊ฐ ์ฃผ์ด์ก์๋ k ๊ฐ์ ์ซ์๋ฅผ ์ ๊ฑฐ ํ์๋ ์ต๋๊ฐ ๋๋ ์๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค.
์๋ํด๋ดค๋ ๋ฐฉ๋ฒ
๋ฌธ์ ๋ฅผ ์๋ชป ์ดํดํด์ ์์์ ๋ถํฐ ๊ฐ์ฅ ์์ ์๋ฅผ ์์ฐจ์ ์ผ๋ก k ๊ฐ ์ ์ธ์ํค๋ ๋ฐฉํฅ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ์๋ค.
์์ ์์ ์ฃผ์ด์ง 1924 ๋ 1231234 ์ ๊ฒฝ์ฐ์ ์ฐ์ฐํ ์ซ์์ ๋ฐฐ์น๊ฐ ๋ง์ ๋จ์ด์ ธ์ ํต๊ณผํ์ง๋ง 4177252841 ์ ๊ฒฝ์ฐ์ 477584 ๊ฒฐ๊ณผ๊ฐ์ด ๋์ค๋ฉด์ ํต๊ณผํ์ง ๋ชปํ๋ค.
์ ์ฒด ์์์ ์ต์ ์ซ์๋ฅผ ๋นผ๋ ๋ฐฉ์์ผ๋ก ํธ๋ ๋ฌธ์ ๊ฐ ์๋๋ ๊ฒ์ ๋๊ผ๋ค.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public String solution(String number, int k) {
String[] arr = number.split("");
Arrays.sort(arr);
StringBuilder sb = new StringBuilder(number);
for (int i = 0; i < k; i++) {
for (int j = 0; j < sb.length(); j++) {
if (String.valueOf(sb.charAt(j)).equals(arr[i])) {
sb.deleteCharAt(j);
break;
}
}
}
return sb.toString();
}
}
ํ์ด
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ : ์ต์ข
๊ธธ์ด๋ ์๋ ๊ธธ์ด์์ k ๋ฅผ ๋บ ๋งํผ(
number.length() - k)์ด ๋๋ค. ๊ทธ ๊ธธ์ด๋ฅผlen์ด๋ผ๊ณ ํ ๋, ๋งจ ์์์๋ถํฐ ์์ฐจ์ ์ผ๋ก ์ต๋ ์ซ์๋ง์len๊ฐ ์ด์ด ๋ถ์ฌ์ผ ํ๋ค.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class Solution {
public String solution(String number, int k) {
String answer = "";
StringBuilder sb = new StringBuilder();
ArrayDeque<Character> stack = new ArrayDeque<>();
// 1
for (int i = 0; i < number.length(); i++) {
char c = number.charAt(i);
while (!stack.isEmpty() && stack.peek() < c && k > 0) {
stack.poll();
k--;
}
stack.push(c);
}
// 2
for (int i = 0; i < k; i++) {
stack.pop();
}
// 3
for (char c : stack) {
sb.append(c);
}
return sb.reverse().toString();
}
}
-
์ฝ๋์
1๋ฒ ๋ถ๋ถ : ๋งจ ์ ์ซ์๋ถํฐ ํ์ธํ๋ค. ํ์ฌ ์ซ์๊ฐ ์คํ์ ์๋ ์ ๋ณด๋ค ํฌ๋ฉด ์คํ์ ์๋ ์๋ฅผ ์ ๊ฑฐ ํ๊ณ ๋ฃ๋๋ค. ์ด๋ ์คํ์ ๋ค์ด์๋ ์๊ฐ ์ฌ๋ฌ๊ฐ ์์ผ๋ฉด k ๋ฒ์ ๋ด์์ ๋ชจ๋ ์ง์ด๋ค. ์๋ฅผ ๋ค์ด4177252841์์ ์คํ์4, 1๊น์ง ๋ค์ด์๋ ์ํ์์ ๋ค์ ์ซ์์ธ7์ ๋ฃ์๋ ์ ๋๊ฐ์ ์ซ์๋ฅผ ๋ชจ๋ ์ง์์ผ ํ๋ค. - ์ฝ๋์
2๋ฒ ๋ถ๋ถ : ์ด ๋ถ๋ถ์999์ ๊ฐ์ด ๋๊ฐ์ ์ซ์ ์กฐํฉ์ผ๋ก ์ ๋ ฅ๋๋ ๊ฒฝ์ฐ, ์คํ์9, 9, 9๋ชจ๋ ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์ k ๋งํผ ์ ๊ฑฐ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ ํ์ํ๋ค. - ์ฝ๋์
3๋ฒ ๋ถ๋ถ : ์คํ ๋งจ ์๋ถ๋ถ ๋ถํฐsb์ ๋ค์ด๊ฐ ์์ผ๋ฏ๋ก ์๋ ์ซ์ ์์๋๋ก ๋ค์ง์ด์ ์ถ๋ ฅํ๋ค.
ํ๊ณ
๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ๋ง์ด ์ํ์ด๋ด์ ๊ทธ๋ฐ๊ฐ ๋ญ๊ฐ ์ ํํ๋ ์๊ณ ๋ฆฌ์ฆ์ ์ด์ฉํด ํธ๋ ๋๋์ด ์๋๊ณ , ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ์ด๋ค ์์ผ๋ก ํ์ด๋๊ฐ์ผ ๋ ์ง์ ๋ํ ์ ๋ต์ ๊ฐ๊น๋ค๋ ๊ฒ์ ๋๊ผ๋ค. ์ฝ๋๋ ์งง์ง๋ง ์๊ฐํด ๋ด๊ธฐ๊ฐ ์ฝ์ง ์๋ค. ๋ง์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด๋ฉด์ ์๊ฐํ๋ ์ฐ์ต์ ํด์ผ ๋ ๊ฒ ๊ฐ๋ค.
๋๊ธ๋จ๊ธฐ๊ธฐ