JAVA 기초 알고리즘 - 추억 점수 (Arrays.asList.indexOf())
https://school.programmers.co.kr/learn/courses/30/lessons/176963?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
파이썬에서는 리스트 값으로 인덱스를 매우 쉽게 구할 수 있습니다.
시간복잡도가 O(n)이기 때문에 자주 사용하지는 않지만, 그래도 반복문을 돌리고 if문을 걸어가며 찾는 것보다 수월하게 찾을 수 있죠.
그렇게 많이 사용할 것 같진 않지만 파이썬으로 할 수 있는걸 자바에서도 하고 싶어서 찾아봤는데
일반 배열에서는 사용하지 못하고 List로는 사용할 수 있다고 합니다.
그렇기에 asList를 이용하여 형변환을 해준 뒤 indexOf를 사용하여 간단하게 문제를 풀 수 있었습니다.
또한 파이썬의 반복문은 객체를 순회하면서 그 안의 객체를 받아오는게 가능한데, 자바에서도 ‘ : ’ 을 활용하여 구현할 수 있었습니다.
String[] names = [“duljji”, “duljji2”] 가 있으면 for(int i=0; i<names.length; i++) 가 아니라 for(String name : names)로 바로 값들을 가져올 수 있는거죠
물론 인덱스가 필요할 때에는 사용할 수 없지만 파이썬에서도 꽤 유용하게 자주 사용하던 방식이라 익혀두었습니다.
For 문으로 photo의 각 배열들을 가져오고 그 각 배열들 안의 String 객체를 for문을 다시 한번 돌려 가져와주었습니다.
그리고 그 값의 인덱스를 찾아서 점수를 더해주어 짧게 풀 수 있었습니다.