분류 전체보기

    [Xcode] build setting - build active architecture only

    build setting - build active architecture onlyYes: 디버그 용도- 빠른 속도, 단 32bit아키텍처만 지원32bit 아키텍처: armv7, armv7sNo: 배포 용도- 64bit 아키텍처도 지원64bit 아키틱쳐: arm64

    Xcode 시뮬레이터 빌드 안되는 문제

    rosetta 시뮬레이터로 설정해줘야한다!! ! rosetta가 뭐임?✅ Rosetta는 인텔 프로그램에서 OS X와의 호환성을 연결해주는 백그라운드 프로그램이라고 합니다. 응용 프로그램중에 응용 프로그램(Intel)로 표시되어 있는 프로그램들은 M1같이 Apple 실리콘이 탑재된 맥북에서 작동하기 위해서는 Rosetta가 필요합니다. Xcode는 응용 프로그램(Universal)로 되어 있기 때문에 Apple 실리콘과 인텔을 모두 지원하는 걸 알 수 있고, 범용 앱이기에 Rosetta가 필요하지 않습니다. ! 굳이 사용하지 않아도 arm과 x86_64 를 모두 지원하는데 굳이 Rosetta를 누르는 이유?✅  해당 설정을 누르게 되면 Universal 앱에서 Apple Silicon을 지원하도록 업데이..

    [UiKit] pod install 오류

    [!] CocoaPods could not find compatible versions for pod "MobWithAD": In Podfile: MobWithAD (= 1.2.4)None of your spec sources contain a spec satisfying the dependency: `MobWithAD (= 1.2.4)`.You have either: * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`. * mistyped the name or version. * not added the source repo that hosts the Pod..

    [UiKit] 뷰 레이아웃 관련 메서드 정리...

    View와 ViewController 레이아웃 사이클ViewController 를 표시했을 때, 3단계로 호출이된다업데이트 : 오토레이아웃의 Constraints를 갱신한다. Constraints의 갱신은 SubView로부터 SuperView의 순서대로 호출된다.레이아웃 : Constraints를 바탕으로 레이아웃을 실행한다. 여기에서 view의 center와 bounds를 결정한다. 레이아웃의 갱신은 superview로 부터 subview의 순서로 호출된다.그리기 : 레이아웃 후, UIView의 drawRect(rect:CGRect)가 호출된다. 이때는 CoreGraphics를 사용하여 그린다.viewController에서 레이아웃이 결정되는 과정viewWillLayoutSubViews() 메서드 호출..

    [UiKit] UIPanGesture setTransition(.zero) 해주는 이유

    💡 setTranslation(.zero)를 해줘야하는이유이동 범위를 제한해주었다면, setTranslation메서드를 적어주지 않아도 작동하지만, 손가락 움직임에 따라 변하는 느낌보다는 조금만 건드려도 훅 올라가는 느낌이 든다.이유는 pan제스처 인식기가 원점에서부터 이동한 거리를 따라서 이동해야하는데, .zero로 설정해주지않으면 바로 이전 위치로부터 떨어진 거리를 계산하기 때문에 훅 올라가고 훅 내려가는 것이다. 따라서 setTranslation메서드를 적어주는 것이 좋음!

    [Swift] 백준 배열 문제들

    ● 10818import Foundationlet count = Int(readLine()!)!let arrays = readLine()!.split(separator:" ").map { Int( String($0) )! }let max = arrays.max()!let min = arrays.min()!print("\(min) \(max)") readLine()!.split(separator: " ")의 결과 타입은 [String] 이 아니라 [String.SubSequence]임. SubSequence는 Collection 타입에서 어떤 것의 부분을 나타내는 타입임Int타입으로 변환할 때, String.SubSequence -> Int 보다 String.SubSequence -> String -> I..

    [Swift] 백준 알고리즘 - 요세푸스문제(1158)

    문제요세푸스 문제는 다음과 같다.1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다.N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오.입력첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000)출력예제와 같이 요세푸스 순열을 출력한다. import Foundationlet input = readLine()!.s..

    [Swift] 백준 알고리즘 - 키로거(5397)

    문제창영이는 강산이의 비밀번호를 훔치기 위해서 강산이가 사용하는 컴퓨터에 키로거를 설치했다. 며칠을 기다린 끝에 창영이는 강산이가 비밀번호 창에 입력하는 글자를 얻어냈다.키로거는 사용자가 키보드를 누른 명령을 모두 기록한다. 따라서, 강산이가 비밀번호를 입력할 때, 화살표나 백스페이스를 입력해도 정확한 비밀번호를 알아낼 수 있다. 강산이가 비밀번호 창에서 입력한 키가 주어졌을 때, 강산이의 비밀번호를 알아내는 프로그램을 작성하시오. 강산이는 키보드로 입력한 키는 알파벳 대문자, 소문자, 숫자, 백스페이스, 화살표이다.입력첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이..

    [Swift] 백준 알고리즘 - 에디터(1406)

    문제한 줄로 된 간단한 에디터를 구현하려고 한다. 이 편집기는 영어 소문자만을 기록할 수 있는 편집기로, 최대 600,000글자까지 입력할 수 있다.이 편집기에는 '커서'라는 것이 있는데, 커서는 문장의 맨 앞(첫 번째 문자의 왼쪽), 문장의 맨 뒤(마지막 문자의 오른쪽), 또는 문장 중간 임의의 곳(모든 연속된 두 문자 사이)에 위치할 수 있다. 즉 길이가 L인 문자열이 현재 편집기에 입력되어 있으면, 커서가 위치할 수 있는 곳은 L+1가지 경우가 있다.이 편집기가 지원하는 명령어는 다음과 같다.L: 커서를 왼쪽으로 한 칸 옮김 (커서가 문장의 맨 앞이면 무시됨)D: 커서를 오른쪽으로 한 칸 옮김 (커서가 문장의 맨 뒤이면 무시됨)B: 커서 왼쪽에 있는 문자를 삭제함 (커서가 문장의 맨 앞이면 무시됨)..

    [Swift] 백준 알고리즘 - 방 번호(1457)

    문제다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)입력첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.출력첫째 줄에 필요한 세트의 개수를 출력한다. import Foundationlet input = readLine()!var arrs = [Int](repeating:0, count: 10)for i in input { let num = I..