본문 바로가기
프로그래머스/0단계

배열 만들기 5

by 긴가우딘 2025. 1. 20.

문제 설명

문자열 배열 intStrs와 정수 k, s, l가 주어집니다. intStrs의 원소는 숫자로 이루어져 있습니다.

배열 intStrs의 각 원소마다 s번 인덱스에서 시작하는 길이 l짜리 부분 문자열을 잘라내 정수로 변환합니다. 이때 변환한 정수값이 k보다 큰 값들을 담은 배열을 return 하는 solution 함수를 완성해 주세요.

 


 

문제 읽으면서 생각 정리

  1. intStrs[s] 부터 intStrs[l]까지 자르기
  2. 정수로 변환
  3. 자른 수가 k보다 크면 answer배열에 넣기

 

문제 풀면서 정리

  1. 부분 문자열 자르기: substring()
  2. 배열의 크기가 정해져 있지 않기 때문에 outOfIndex 문제 발생 -> 리스트로 변경

 

import java.util.*;

class Solution {
    public int[] solution(String[] intStrs, int k, int s, int l) {
        int[] answer = {};
        List<Integer> list = new ArrayList<>();
        
        for(String str : intStrs) {
            String subStr = str.substring(s, s + l);
            
            int num = Integer.parseInt(subStr);
            // System.out.println(num);
            
            if(num > k) {
                list.add(num);
            }
        }
        
        answer = list.stream().mapToInt(i -> i).toArray();
        
        return answer;
    }
}

 

'프로그래머스 > 0단계' 카테고리의 다른 글

문자열 여러 번 뒤집기  (0) 2025.01.21
9로 나눈 나머지  (0) 2025.01.20
글자 이어 붙여 문자열 만들기  (0) 2025.01.14
간단한 논리 연산  (0) 2025.01.14
배열 만들기 4  (0) 2025.01.14