코테 준비 23일차_9/28

Jieun·2026년 9월 28일

코딩테스트 준비

목록 보기
17/24
  1. x만큼 간격이 있는 n개의 숫자
  • 초기 정답
class Solution {
    public long[] solution(int x, int n) {
        long[] answer = new long[n];
        for(int i=1;i<=n;i++) {
            long[i] = x*i;
        }
        return answer;
    }
}

배열 변수명 오타
이미 만든 배열 이름이 answer인데, 값을 넣을 때 배열 타입인 long[i]라고 썼음

배열 인덱스 범위 초과
자바 배열은 0번 인덱스부터 시작함, 반복문을 i = 1부터 i <= n까지 돌린 후 answer[i]에 넣으려고 하면 answer[n] 위치에서 배열 범위를 벗어나게 됨

  • 최종 정답
class Solution {
    public long[] solution(int x, int n) {
        long[] answer = new long[n];
        
        for (int i = 0; i < n; i++) {
            answer[i] = (long) x * (i + 1);
        }
        
        return answer;
    }
}
  1. 이상한 문자 만들기
  • 접근 방식
    1) 인덱스 변수 index = 0을 둔다
    2) 문자열 s를 순회
    3) 공백을 만나면 -> 공백을 결과에 포함하고, index 0으로 초기화
    문자를 만나면 -> index가 짝수이면 대문자로 변환
    -> index가 홀수이면 소문자로 변환
    -> 변환된 문자를 결과에 추가하고, index 1 증가

✓ 대문자 만들기 : Character.toUpperCase(c);
소문자 만들기 : Character.toLowerCase(c);
문자열 뽑기 : Char c = s.CharAt(c);

  1. 수박수박수박수...
  • 접근 방식
    짝수 인덱스일 때는 "수"를 추가, 홀수 인덱스일 때는 "박"을 추가

  • 최종 정답

class Solution {
    public String solution(int n) {
        StringBuilder answer = new StringBuilder();
        
        for (int i = 0; i < n; i++) {
            if (i % 2 == 0) {
                answer.append("수");
            } else {
                answer.append("박");
            }
        }
        
        return answer.toString();
    }
}
profile
비전공자의 백엔드 생존기: 어제보다 1% 더 성장하기

0개의 댓글