본문 바로가기

Programmers

[JAVA] Lv.1 추억 점수

https://school.programmers.co.kr/learn/courses/30/lessons/176963

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

문제

photo 배열의 각 원소들(사진 한 장에 등장한 사람들) 중 name의 원소(추억이 있는 사람들)에 해당하는 값이 있다면 그 원소에 대응하는 점수를 더하여 반환하는 문제입니다

 

 

 

풀이

1. list를 선언하여 name의 원소들을 넣어줌

2. contains() 메소드로 photo 배열들의 각 원소가 list에 포함되는지 확인

3. 포함되면 list에서의 해당 원소 인덱스를 찾고 yearning에서 해당 인덱스에 위치한 값(추억점수)을 저장하여 반환

import java.util.*;

class Solution {
    public int[] solution(String[] name, int[] yearning, String[][] photo) {
        
        int[] answer = new int[photo.length];
        List<String> list = new ArrayList<>();
        for (String s : name) {
            list.add(s);
        }
        
        for (int i=0; i<photo.length; i++) {
            for (String s : photo[i]) {
                if (list.contains(s)) answer[i] += yearning[list.indexOf(s)];
            }
        }
        return answer;
        
    }
}

 

'Programmers' 카테고리의 다른 글

[JAVA] Lv.1 약수의 개수와 덧셈  (2) 2024.04.06
[JAVA] Lv.1 명예의 전당 (1)  (0) 2024.04.03
[JAVA] Lv.1 문자열 내 마음대로 정렬하기  (0) 2024.04.01
[JAVA] Lv.1 [1차] 비밀지도  (0) 2024.03.31
[JAVA] Lv.1 콜라 문제  (0) 2024.03.31