
- 문제 해석
- 인물의 그리움 점수를 모두 합산한 값이 해당 사진의 추억 점수
- 그리워하는 사람의 이름을 담은 문자열 배열 name,
각 사람별 그리움 점수를 담은 정수 배열 yearning,
각 사진에 찍힌 인물의 이름을 담은 이차원 문자열 배열 photo
예시)
name - ["may", "kein", "kain", "radi"]
yearning - [5, 10, 1, 3]
photo - [["may", "kein", "kain", "radi"],["may", "kein", "brin", "deny"], ["kon", "kain", "may", "coni"]]
→ [19, 15, 6]
- 문제 풀이 생각
- photo[i][j] → i는 사진의 갯수, j는 사진에 포함된 인물의 갯수
- 결과 배열크기는 사진의 갯수만큼!
- r[i] → name 배열을 반복문으로 돌면서 해당하는 값의 위치를 찾고
yearning 배열에서 위에서 찾은 배열의 위치와 같은 위치의 값을 찾아서
r[0]에 넣어줘
- 문제 풀이
public class App {
public static void main(String[] args) {
String[] name = {"kali", "mari", "don"};
int[] yearning = {11,1,55};
String[][] photo = {{"kali", "mari", "don"}, {"pony", "tom", "teddy"}, {"con", "mona", "don"}};
int[] answer = calculateAnswer(name, yearning, photo);
System.out.println(Arrays.toString(answer)); // 결과 출력
}
public static int[] calculateAnswer(String[] name, int[] yearning, String[][] photo) {
int[] answer = new int[photo.length]; // answer 배열 초기화
for (int i = 0; i < photo.length; i++) {
for (int j = 0; j < photo[i].length; j++) {
for (int x = 0; x < name.length; x++) {
if (photo[i][j].equals(name[x])) {
answer[i] += yearning[x];
}
}
}
}
return answer; // answer 배열 반환
}
}
'Java > 프로그래머스' 카테고리의 다른 글
프로그래머스 - 푸드 파이트 대회 (0) | 2024.06.17 |
---|---|
프로그래머스 Java - [PCCE 기출문제] 8번 / 창고 정리 (0) | 2024.05.23 |
프로그래머스 Java - 옹알이(1) (0) | 2024.05.21 |