본격적으로 Swift로만! 알고리즘 테스트에 임하기 위해 (python 빠이빠이...) 이전에 python으로는 해결해 본 적 있는 문제들을 Swift로 풀이하며 포스팅해보려고 한다.
카카오에서는 확실히 다양한 자료형을 사용하도록 유도하는데, 딕셔너리 선언과 사용이 아직은 익숙하지 않았다.
그래도 로직이라는 것은 똑같으니 크게 어렵지는 않게 구현할 수 있었다.
두가지 자료형만 만들어낸다면, 그 뒤로는 어렵지 않다.
- dict라는 딕셔너리에는, key에 모든 Id를 담아, 자신을 신고한 사람들의 id를 모두 담는다 ( 중복 제거를위해 Set자료형으로 )
- id_sequence에는 우리가 "muzi"라는 id가 id_list에서 몇 번째 index에 위치해있는지 바로 알고싶을 때 사용할 수 있도록, id를 key로, index번호(Int)를 value로 담았다.
이후, dict의 모든 key에 대하여, value인 Set의 크기가 K 이상인 경우에, 그 Set에 담겨있는 Id들에 대하여 메일을 받도록 ( result배열에서 1씩 추가!) 처리해주면 끝
Swift언어 Point!
Swift의 딕셔너리는 Key가 없다면 nil을 뱉어준다..
즉, Key가 있어도 Optional 타입으로 뱉어주기 때문에, 항상 코테에서는 !로 unWrapping을 해서 사용하자!!
2021 카카오 채용연계형 인턴십 : 숫자 문자열과 영단어 (0) | 2022.06.18 |
---|---|
2021 Dev-Matching 웹 백엔드 : 로또의 최고 순위와 최저순위 (Swift) (0) | 2022.06.18 |
백준 1300: K 번째 수 (Swift) (0) | 2022.06.17 |
백준 11403: 경로 찾기 (Swift) (0) | 2022.06.17 |
백준 1012: 유기농 배추 (Swift) - BFS구현 시 pop을 할까 말까? (0) | 2022.06.17 |