로직
-
도시 이름은 대,소문자를 가리지 않기 때문에 대문자 혹은 소문자로 통일해준다.
-
LRU(Least Recently Used) 알고리즘 : 캐시의 사이즈는 한정 되어있기 때문에 캐시 사이즈가 꽉 찬 상태에서 새로운 캐시를 넣으려면 기존 캐시에 있던 데이터를 교체해야하는 데, 가장 오래전에 사용한 것을 제거하는 알고리즘
-
새로운 도시를 넣으면 +5이고, 만약 cacheSize가 찼다면, 가장 오래된 것을 빼내고 새로운 도시를 넣는다. cacheSize가 아직 다 차지 않았다면, 그냥 새로운 도시 넣기
-
기존에 있는 도시를 넣기 위해서는 +1하고, city의 index가 일치하는 값을 지운다.(기존에 있던도시 값을 빼내고 그 도시를 다시 넣는다)
코드
'알고리즘' 카테고리의 다른 글
[programmers] N진수 게임 (0) | 2020.09.10 |
---|---|
[programmers] 섬 연결하기 (0) | 2020.09.10 |
[programmers] 프렌즈4블록 (0) | 2020.09.08 |
[programmers] 폰켓몬 (0) | 2020.09.08 |
[programmers] 타겟넘버 (0) | 2020.09.08 |