붕어의 개발 기록
TIL_0810 본문
반응형

오늘의 한 일
🐋 게시판 만들기-개인 (jpa, spring boot, mysql 사용)-진행 중
🐋 호텔 페이지 만들기-팀 ( jpa, spring boot, mysql, react 사용)- map-완료, likelist-진행중
⭐ 99클럽 20일차 문제풀기
https://archiventum.tistory.com/40
8월 10일 99클럽 항해 20일
99클럽 항해 20일차 오늘의 문제는 큰 수 만들기이다. 문제에서 주어지는 문자열에서 숫자를 추출해내어 크기를 비교하여 가장 큰 수를 반환하는 문제이다. -> 스택을 사용하여서 숫자를 왼
archiventum.tistory.com
import java.util.Stack;
public class Solution {
public static String solution(String number, int k) {
Stack<Character> stack = new Stack<>();
int len = number.length();
for (int i = 0; i < len; i++) {
char current = number.charAt(i);
// k개 숫자를 제거할 때까지 스택의 마지막 숫자와 비교
while (k > 0 && !stack.isEmpty() && stack.peek() < current) {
stack.pop();
k--;
}
stack.push(current);
}
// 만약 k가 0이 되지 않았으면 남아있는 k개를 제거
while (k > 0) {
stack.pop();
k--;
}
// 스택의 숫자들을 문자열로 변환
StringBuilder answer = new StringBuilder();
for (char c : stack) {
answer.append(c);
}
return answer.toString();
}
}반응형