25.1.16.목

kinkin_a·2025년 1월 16일

내일배움캠프 TIL

목록 보기
42/100

알고리즘 코드카타

24.서울에서 김서방 찾기

내가 푼 코드

class Solution {
    public String solution(String[] seoul) {
        String answer = "김서방은 ";
        String position ="";
        
        for(int i=0;i<seoul.length;i++){
            if(seoul[i].equals("Kim")){
                 position= i+"";
                 answer=answer+position+"에 있다";
                break;
                    }
        }
        return answer;
    }
}``````

굳이 string position 변수를 생성할 필요 없이 answer=answer+i+"에 있다"; 만해도 충분함. 초기에 왜인지 오류가 나서 괜히 메모리낭비함.

다른 분 코드

public class FindKim {
    public String findKim(String[] seoul){
        //x에 김서방의 위치를 저장하세요.
        int x = Arrays.asList(seoul).indexOf("Kim");        
        return "김서방은 "+ x + "에 있다";
    }```

25. 나누어 떨어지는 숫자 배열

내가 푼 코드

import java.util.ArrayList;
import java.util.Collections;

public ArrayList<Integer> solution(int[] arr, int divisor) {
        ArrayList<Integer> answer = new ArrayList<>();
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] % divisor == 0)
                answer.add(arr[i]);
        }
        if (answer.isEmpty()){
            answer.add(-1);}

        Collections.sort(answer);

        return answer;
    }

실행은 되지만 문제에서 요구하는 건 list가 아니라 배열을 반환해야 정답이기 때문에 틀림.

다른 분 코드 1)

import java.util.Arrays;

class Divisible {
    public int[] divisible(int[] array, int divisor) {
        return Arrays.stream(array).filter(factor -> factor % divisor == 0).toArray();
    }

다른 분 코드2)

import java.util.*;
class Solution {
    public int[] solution(int[] arr, int divisor) {
        int[] answer = {};
        List<Integer> list = new ArrayList<>();
        for(int i = 0 ; i < arr.length; i++){
            if(arr[i] % divisor == 0){
                list.add(arr[i]);
            }
        }
        if(list.isEmpty()) list.add(-1);
        answer = list.stream().mapToInt(Integer::intValue).toArray();
        Arrays.sort(answer);
        return answer;
    }
}``````

String/ StringBuffer/ StringBuilder의 개념과 차이

https://baesaa0304.tistory.com/147

arrayList 주요 메소드

https://da2uns2.tistory.com/entry/Java-ArrayList-%EC%82%AC%EC%9A%A9%EB%B2%95%EA%B3%BC-%EC%A3%BC%EC%9A%94-%EB%A9%94%EC%86%8C%EB%93%9C

0개의 댓글