-
Programmers LV.2 전화번호 목록Programmers 2020. 12. 16. 22:55
2중포문을 사용하지 않고도 처리가 가능 할 줄 알고 별에 별 시물레이션을 돌려봤지만,
명확한 답을 찾지 못하여서 진행
처음엔 향상된 for 문을 사용하는걸 즐겨쓰는데,
for(String phone : phone_book) {
for(String equlsePhone : phone_book) if(!phone.equlse(equlsePhone)
}
위와 같이 처리하는게 더 빠른지 궁금했는데, 결국 한번 더 for문을 돈다는게 오래걸린 다는 것을 확인하고, 처리하였다.
문제를 명확히보지않고 "접두어"가 아닌 indexOf로 해결하면 되겠지 하고 넘겼다가, 접두어 항목을 다시보고 startsWith로 변경하였다.
import java.util.*; class Solution { public boolean solution(String[] phone_book) { Arrays.sort(phone_book); for(int i=0; i < phone_book.length-1; i++){ for(int a=i+1; a<phone_book.length; a++) if(phone_book[a].startsWith(phone_book[i])) return false; } return true; } }
'Programmers' 카테고리의 다른 글
Programmers LV.2 다리를 지나가는 트럭 (0) 2020.12.23 Programmers LV.2 주식가격 (0) 2020.12.20 Programmers LV.3 베스트앨범 (0) 2020.12.19 Programmers LV.2 위장 (0) 2020.12.17 Programmers LV.1 완주하지 못한 선수 (0) 2020.12.16