분류 전체보기 (269) 썸네일형 리스트형 [백준/Swift] 11779: 최소비용 구하기 PS일지 문제 11779번: 최소비용 구하기 2 첫째 줄에 도시의 개수 n(1≤n≤1,000)이 주어지고 둘째 줄에는 버스의 개수 m(1≤m≤100,000)이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스 www.acmicpc.net 간단한 문제 요약 다익스트라 최단 경로 문제입니다! A번째 도시에서 B번째 도시까지 가는데 드는 버스 비용을 최소화 시켜야합니다. 이때 A->B까지 갈 때 최소로 드는 비용과 경로를 출력해야한다. 출 -> 도착 지점은 항상 지정되어있다. 고려해야 할 사항 문제를 구현하면서 답은 여러 개가 정답일 수 있습니다. 문제 풀이, 했갈렸던 점 PS 일지 문제를 풀면서 신기했던 점이 있습니다. 예제 입력에 대한 예제 출력의 도시 경로 출.. [iOS/Git] .xcodeproj/project.pbxproj 양쪽에서 수정( merge할 때 자동 병합 안되는 경우) 띠로리.. fileOrganization 브랜치에서 파일 구조를 싹 변경하고 develop 브랜치에 merge한 후에 지금 개발중인 notification branch로 merge를 했는데 .xcodeproj/project.pbxproj 파일이 양쪽에서 수정됬다고 한다. 파일도 열리지 않았다... vim으로 해당 파일 들어가서 비 편집 모드에서 검색 하는 '/' 명령어 이후에 >>>를 검색했다. 휴.. 뭔가 자동 병합이 안되는 경우가 나왔다. 머지 하기위해 병합 하니까 다시 잘 돌아간다!! 결론 : 서로 다른 브랜치에서 .xcodeproj/project.pbxproj 를 업데이트 한 후에 합쳐야 할 상황에는 자동 병합이 안된다. -> vim으로 수동 병합 해주면 충돌 해제완료!! 근데 한가지 문제가 있다.. [Algorithm] 플로이드 와셜(Floyd-Warshall) 개념 뿌수기!! 1. What is Floyd Warshall? 플로이드 와샬 알고리즘은 '모든' 정점 사이의 최단 경로를 구할 때 사용하는 알고리즘 입니다. 한 정점->인접한 다른 정점으로 갈 때 비용을 전부 2차원 배열에 저장합니다. 모든 정점을 포문으로 탐색하게 되는데 이때 특정 한 정점일 때 해당 정점을 거쳐서 갈 수 있는 경로가 원래 2차원 배열에 저장된 경로의 비용보다 낮다면 2차원 배열의 cost를 갱신합니다. 2. Floyd Warshall's algorithm 인접 정점 간 갈 수 있는 비용을 2차원 배열 visited에 저장했다고 가정한다면 점화식은 visited[v][w] = min(visited[v][w], visited[v][k] + visited[k][w])입니다. v : 시작 정점 w : 도착.. [백준/Swift] 11404: 플로이드 PS일지. 문제 11404번: 플로이드 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 간단한 문제 요약 n개의 도시가 있다. 한 도시에서 출발하여 다른 도시에 도착하는 m개의 버스가 있다. 각 버스는 사용시 필요한 비용이 있다. 모든 도시 쌍에 대해서 도시 A -> B로 가는 최단 경로를 구하시오!! 고려해야 할 사항 시작 도시와 도착 도시를 연결하는 노선은 하나가 아닐 수 있다!! 문제에서 주여졌습니다. 즉, 문제 input에서 A -> B로 가는 비용 10 을 입력 받았는데 A -> B로 가는 비용 5 를 추가로 입력 받을 수 있다는 것입.. [iOS] unrecognized selelctor sent to class 에러 잡기 에러 마주한 상황 여기서 biiou 또는 biiou 옆 프로필 클릭시 상세 프로필로 들어가는 기능을 구현하고 있었어요. 둘 다 같은 함수를 통해서 상세 프로필 화면을 불러오는 액션 메서드를 사용했어요. 근데 버튼일 때는 성공적으로 되지만 프로필을 눌렀을 때는 unrecognized selelctor sent to class 에러가 발생했습니다. 에러가.. 버튼의 경우 addTarget을 통해서 프로필의 경우 UITapGestureRecognizer(target: self, action: #selector(didTapUsername))를 프로필 인스턴스에 부여 했습니다. 같은 함수인데 프로필을 눌렀을 때만 unrecognized selelctor 에러가 떴는데 계속해서 생각하니 오류의 원인을 알게 되었습니.. [Swift] No5. Subscription, Cancellable 개념 뿌수기!!! | Combine 안녕하세요. 이번 포스트는 Combine에서 Cancellable과 Subscription에 대해 공부한 개념을 정리하려고 합니다. 1. What is Cancellable and AnyCancellable ? 컴바인 사용할 때 커스텀 subscriber 구현도 하긴 하지만?! 저는 sink(receiveCompletion:receiveValue:), sink(receiveValue:)를 많이 사용합니다. 물론 @Publihsed를 사용할 때 assign(to:on:)도 사용합니다. 이 세 개 operator의 공통적인 특징은 AnyCancellable을 반환하는 것입니다. AnyCancellable은 Cancellable 프로토콜을 채택하는 final class입니다. Cancellable은 cance.. [백준/Swift] 1504: 특정한 최단 경로 문제 1504번: 특정한 최단 경로 첫째 줄에 정점의 개수 N과 간선의 개수 E가 주어진다. (2 ≤ N ≤ 800, 0 ≤ E ≤ 200,000) 둘째 줄부터 E개의 줄에 걸쳐서 세 개의 정수 a, b, c가 주어지는데, a번 정점에서 b번 정점까지 양방향 길이 존 www.acmicpc.net 간단한 문제 요약 방향성 없는 그래프가 주어진다. 1->N 정점으로 최단 거리로 이동하려고 한다. 이때 문제에서 주어진 임의의 두가지 정점은 반드시 통과해야 한다. 물론 한번 이동했던 정점, 간선을 다시 이동할 수 있다.(최단 경로로 이동한다는 전제하에) 1 -> N까지 최단 경로를 갈 때 반드시 임의의 두 정점 v1, v2를 거쳐 최단 경로를 가는 경로 길이를 출력 해야한다. 고려해야 할 사항 v1 -> v2로.. [Swift] No4. Hi Failure, Error Handling 개념 뿌수기!!! & Error Deep Dive!! | Combine Combine framework를 사용하면서 Error는 잠재적으로 발생할 수 있습니다. 프로그램 실행 중 발생한 Error는 throwing 됩니다. 이때 catching. 예외 처리를 할 수 없다면 런타임 오류가 발생하게 됩니다. 앱은 멈추게 됩니다. 따라서 에러를 처리할 수 있는 다양한 방법에 대해서 정리하려고 합니다. 1부는 정말 간단하게 Error의 특징에 대해 짧게 알아보고 2부에선 Combine을 사용할 때 발생한 에러를 처리하는 방법에 대해 탐구할 것입니다. 1. What is Error? Error Handling Deep Dive :) Swift에서 에러는 Error protocol을 따릅니다. 반드시 Error 프로토콜을 채택한 object를 구현해야 Swift error handli.. 이전 1 ··· 14 15 16 17 18 19 20 ··· 34 다음