레벨2 3

[프로그래머스] 탐욕법(Greedy) 조이스틱 with Swift

안녕하세요. 오늘은 프로그래머스 조이스틱 문제를 풀어보겠습니다! 코딩테스트 연습 - 조이스틱 조이스틱으로 알파벳 이름을 완성하세요. 맨 처음엔 A로만 이루어져 있습니다. ex) 완성해야 하는 이름이 세 글자면 AAA, 네 글자면 AAAA 조이스틱을 각 방향으로 움직이면 아래와 같습니다. ▲ - 다 programmers.co.kr 조이스틱 문제는 분류된 카테고리와 같이 탐욕알고리즘으로 문제를 해결하실 수 있습니다! 우선 알파벳과 알파벳간의 최소 이동거리를 구해줍니다! 삼항연산자를 이용해 최적값을 구해줍니다! for i in name.utf8 { count = Int(i)-Int(a.asciiValue!) count = count > 26-count ? 26-count : count makeNameCount..

[프로그래머스] 깊이/너비 우선 탐색(DFS/BFS) 타겟 넘버 with Swift

안녕하세요. 오늘은 프로그래머스 2레벨 타겟넘버 문제를 풀어보겠습니다! 타겟넘버는 전형적인 dfs문제입니다! 각각의 입력이 +와 -일때마다 달라지는 결과가 target과 같으면 결과가 1씩 증가하도록 문제를 하면 되는데요! dfs의 깊이가 입력의 Index로 작용하게 만들어 주시면 됩니다! 그리고 depth가 max일때 target과 모든 결과의 합과 비교해서 answer의 증감을 결정해 주시면 됩니다! import Foundation var result:Int = 0 var targetResult:Int = 0 var targetDepth:Int = 0 var sourceNumbers:[Int] = [Int]() var resultsNumbers:[Int] = [Int]() var answer:Int ..

[프로그래머스] 코딩테스트 연습 2019 KAKAO BLIND RECRUITMENT 오픈채팅방 with Swift

안녕하세요! 오늘은 프로그래머스 2레벨 오픈채팅방 문제를 풀어볼건데요! 지난주 주말에 1레벨 문제를 다 풀어버려서 1레벨테스트를 한 결과 쉽게 통과했습니다! 2레벨도 꾸준히 다 풀어보고 합격 이미지 올려드릴게요! SWEA A형도 있는데 바로 2레벨부터 갈까 후회(매일 1문제이상 1레벨부터 풀기로 해서 시간이 오래걸려요)중이긴 합니다 ㅠ ㅎㅎ 오늘은 자랑은 여기까지하고! 바로 문제 풀이 들어가겠습니다! 오픈 채팅방 문제는 제 생각에는 해쉬(딕셔너리) 문제라고 생각했습니다! 아이디와 닉네임 쌍으로 이루어져있다고 생각하면 아이디와 닉네임을 key와 value로 쓰고 싶다는 생각이 파바바밧 들더라구요! Swift의 딕셔너리는 key와 value로 이루어져 있고 키로 대괄호를 통해 접근이 가능해서 매우 사용하기 ..