본문 바로가기

코딩테스트준비

99클럽 코테 스터디 6일차 TIL - 프로그래머스 의상 JAVA 풀이 문제🔗https://school.programmers.co.kr/learn/courses/30/lessons/42578 문제 접근설명 이 문제는 옷의 종류에 따라 조합할 수 있는 경우의 수를 구하는 문제입니다.접근법 코니가 종류 별로 입을 수 있는 옷의 가지 수는 "옷의 수 + 1" 입니다. 옷의 선택지 수에 아무것도 착용하지 않는 경우의 수 1을 더하기 때문입니다. 문제에서 주어진 예시로 설명하자면 얼굴에 착용할 수 있는 경우의 수는 안경, 선글라스, 착용 X 으로 3가지 입니다. 코니가 입을 수 있는 서로 다른 옷의 조합 수는 "종류 별 옷의 선택지 수"를 모두 곱한 뒤 "아무것도 입지 않는 경우 1"을 빼주면 됩니다. 문제 예시에서는 (2 + 1) x (1 + 1)  x (1 + 1)  x (1 .. 더보기
99클럽 코테 스터디 4일차 TIL - 프로그래머스 JadenCase 문자열 만들기 문제🔗https://school.programmers.co.kr/learn/courses/30/lessons/12951 문제 접근설명 문자열을 구성하는 각 단어의 첫 번째 문자만 대문자로, 나머지는 소문자로 변환하는 문제입니다. 접근법 입력 문자열에서 공백은 맨 처음에 위치할 수도 있고, 연속으로 여러 번 등장할 수도 있습니다. 예를 들어, 입력 예시가 다음과 같을 때 정답 문자열은 이렇습니다.입력: " " / 정답: " "입력: " happy Birth   day 2you" / 정답: " Happy Birth   Day 2you"따라서 StringTokenizer로 문자열을 자르는 것은 적합하지 않습니다. 대신 문자열 자체를 순회하는 방법이 있습니다. 문제 풀이class Solution { pu.. 더보기
99클럽 코테 스터디 3일차 TIL - 프로그래머스 문자열 내 마음대로 정렬하기 문제🔗https://school.programmers.co.kr/learn/courses/30/lessons/12915 문제 접근설명이 문제는 주어진 문자열 배열 strings를 정렬하는 문제입니다. 정렬 기준은 다음과 같습니다.문자열 원소의 n번째 문자를 기준으로 오름차순n번째 문자가 동일한 경우 알파벳 순으로 오름차순접근법문자열의 정렬 기준을 정의할 Comparator를 구현하고, Arrays.sort 메서드 호출로 strings 배열을 정렬하면 됩니다. 문제 풀이1. Comparator 구현 다음은 Comparator를 직접 구현한 풀이입니다.import java.util.Arrays;import java.util.Comparator;class Solution { public String[].. 더보기
99클럽 코테 스터디 2일차 TIL - 프로그래머스 x만큼 간격이 있는 n개의 숫자 문제🔗https://school.programmers.co.kr/learn/courses/30/lessons/12954 문제 접근설명입력으로 숫자 x와 n이 주어지면, x 부터 시작해 x 씩 증가하는 숫자 n개를 갖는 배열을 리턴하는 문제입니다.예를 들어 입력이 x=2, n=5 라면 [2, 4, 6, 8, 10]의 배열을 반환합니다.접근법x는 (-1억 최소 -1000억 부터 최대 1000억가 됩니다. int 형의 범위를 넘어가기 때문에 long[] 타입의 배열을 반환해야 합니다. 문제 풀이class Solution { public long[] solution(int x, int n) { long[] answer = new long[n]; long X = x; .. 더보기
99클럽 코테 스터디 1일차 TIL - 프로그래머스 n^2 배열 자르기 문제🔗https://school.programmers.co.kr/learn/courses/30/lessons/87390 문제 풀이1. 시간 초과 풀이 처음에는 n x n 행렬을 2차원 배열로 구현했습니다. 하지만 n의 범위는 1부터 10^7 까지로, O(n^2) 풀이는 시간 초과 되어 통과할 수 없었습니다.class Solution { public int[] solution(int n, long left, long right) { int arr[][] = new int[n][n]; // 1. 2차원 배열을 생성한다. for(int i=0; i 2. 통과 풀이2차원 배열의 행, 열과 값 사이의 수식을 통해 O(n) 안으로 해결할 수 있습니다. 문제.. 더보기