목록전체 글 (157)
원하는 것은 뭐든지

문제풀이문장이 주어지고 단어의 시작이 대문자여야 한다.단어의 시작이 숫자면 그대로 두고 뒤에 문자들은 소문자여야 한다. 1. 숫자는 단어의 첫 문자로만 나옵니다.2. 숫자로만 이루어진단어는 없습니다.두 개의 조건은 상관이 없었는데3. 공백문자가 연속해서 나올 수 있습니다.이 조건을 간과해서 조금 오래 걸렸다. 제출 - 정답StringBuilder를 사용해서 answer 객체를 선언하고, 문장을 lowercase변환 후 charArray로 변환한다.첫 번째 문자가 조건에 맞는다면 uppercase 변환 후 넣어준다.한 문자씩 넣으면서 이전 문자가 공백이었고 현재 문자가 lowercase면 uppercase로 변환한 후 넣어준다.class Solution { public String solution(S..

문제풀이정렬은 간단하게 풀이가 가능한데 여기서는 주어진 문자열에 n에 해당하는 인덱스를 기준으로 정렬하는 문제다.Arrays.sort를 사용하고 Comparator를 사용해 비교방법을 재정의 해주면 된다. 제출 1 - 정답import java.util.*;class Solution { public String[] solution(String[] strings, int n) { Arrays.sort(strings, new Comparator(){ public int compare(String s1, String s2){ char c1 = s1.charAt(n); char c2 = s2.charAt(n); ..

문제 풀이n이 1000으로 작기 때문에 간단한 반복문으로 해결할 수 있는 문제다.제출class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; answer[0] = x; for(int i=1;i TIL굉장히 간단한 문제라 어렵지 않게 해결 가능했다.내일 할일완전탐색(재귀, 백트래킹) 학습하기JPA 강의 학습

문제 풀이주어진 left부터 right 까지만 구하면 된다.n으로 나눈 값, 나머지 가 2차원 배열에서의 행과 열이 된다.right와 left의 차는 10^5 미만이기 때문에 시간 초과가 발생하지 않는다.위치에 해당하는 값은 행, 열 중 높은 값에 1을 더한 값과 같다.제출 1 - 정답class Solution { public int[] solution(int n, long left, long right) { int[] answer = new int[(int)(right - left) + 1]; //정답 배열 int idx = 0; //배열 인덱스 //시작 long leftX = left / n; long leftY = left % n; //..

문제풀이왜 이렇게 어렵게 다가오는지 모를 정도로 어려웠다.. ㅋㅋ 머리가 안 돌아간다. 입력받은 값이 위와 같다면 최댓값을 중심으로 값을 더해주고 최댓값이 한번만 더해지면 되는 형태이다. 입력받은 값이 위와 같이 최대값이 여러 개인 상황이라면 최댓값의 양 끝 값 사이의 값은 최댓값으로 채워주면 된다. 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;/** * 백준 * 창고 다각형 */public class No2304 { public static void main(String[] args) throws IOException..