분류 전체보기

문제설명입력 & 출력나의 풀이class Solution { public int[] solution(String s) { int[] answer = new int[2]; String result = s; int count = 0; while(!result.equals("1")){ int zero_count = 0; StringBuilder new_string = new StringBuilder(); for(int i = 0 ; i  이번 문제는 0과 1로 이루어진 문자열을 1이 될 때까지 반복하는 횟수와 0을 삭제한 횟수를 구하는 문제입니다. 처음에 0을 제거한 뒤 1만 남은 문..
▶ 그리디 알고리즘 활용한 간단한 문제가 있어 정리해보고자 합니다. 문제설명입력 & 출력나의 풀이import java.util.*;class Solution { public int solution(int[] d, int budget) { int answer = 0; Arrays.sort(d); int sum = 0; for(int i = 0 ; i  각 부서에서 요청한 예산이 들어있는 배열 d와 예산의 총합 budget이 주어졌을 때, 최대 몇 개의 부서에 예산을 배정할 수 있는지를 구하는 문제입니다. 이번 문제는 는 그리디 알고리즘을 활용하면 간단히 풀 수 있습니다. 문제에서 그리디 알고리즘을 활용할 수 있는 이유는 다음과 같습니다...
▶ Stream API의 anyMatch() 메서드활용한 간단한 문제가 있어 정리해보고자 합니다. 문제설명입력 & 출력나의 풀이 이번 문제는 간단하게 인자로 받은 배열중에서 0~9의 값이 없는 값을 추출하여 합을 구하는 문제입니다. 이중 for문이나 다른 방법도 많지만 Stream API의 anyMatch() 메서드를 사용하면 간편하게 풀이할 수 있습니다. 먼저 향상된 for문을 사용하여 0 ~9까지 순회를 합니다. for문안에서 Stream을 사용하기 위해서 배열을 "Arrays.stream()"으로 stream으로 변환을 해주고, stream API의 anyMatch() 메서드를 사용하여 numbers의 요소와 0~9를 비교하여 값이 있는지 체크를 합니다. 만약 찾은 값 found가 false라면 없..
·Coding Test/백준
▶ BufferedReader와 StringBuilder을 활용한 간단한 문제가 있어 정리해보고자 합니다. 문제설명입력 & 출력나의 풀이 이번 문제는 입력된 문자열 숫자를 뒤집어서 더하고 다시 뒤집어서 출력하는 문제입니다. 입력을 String타입으로 받아주고, StringBuilder의 reverse() 메서드를 사용하여 문자열을 뒤집어 줍니다. 뒤집어준 문자열 숫자를 연산을 해야 하기 때문에 Integer.parseInt() 메서드로 정수형으로 캐스팅을 해줘야합니다. 그리고 마지막으로 연산된 결과를 다시 뒤집어주면 마무리가 됩니다.  Refactoring StringBuilder의 reverse() 메서드를 사용하는 부분을 하나로 묶어 함수로 선언했습니다. 문자열을 뒤집어 순자로 변환하는 부분이 한 ..
지누박
'분류 전체보기' 카테고리의 글 목록 (11 Page)