마라톤
솔루션1:
참가자 명단의 i번째 이름과 완주자 명단의 j번째 이름 비교해 동일하면
참가명단의 i번째 이름을 ""로 대체하는 방식 채택.
-> 문제점: 동명이인이 1,2 존재하면 완주자에 한명만 있어도 둘다 완주한 것으로 간주됨
-> 해결: j번째 완주자도 이름을 ""로 대체
-> 문제점: i번째 ""와 j번째 ""을 비교하는 문제 발생해 효율성 떨어짐. 평생 걸림.
-> 해결: 앞의 것 버리고 ArrayList도입해 새로운 솔루션2 찾음
(Set써볼까 생각했으나 집합안에는 중복 허용 안되니까.. 아닌가?)
솔루션2:
완주자 명단을 담은 ArrayList를 만든 후, 참가자명단에서 참가자 i와 완주자 명단을 비교하며 일치하면 완주자를 지움.
완주자 명단에서 본인을 찾을 수 없는 참가자 i를 리턴하도록 .
ArrayList의 remove와 contain
https://howtodoinjava.com/java/collections/arraylist/remove-element-from-arraylist/
(1) 완주자 명단이 담긴 ArrayList인 tmpList 생성
(2) for문으로 i번째 참가자와 완주자 명단을 비교
-> tmpList.contains(participant[i])가 true이면,
tmpList에서 해당 값을 제거하도록
tmpList.remove(participant[i]);