일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
- TDD
- Bubble Search
- algorithm
- RC
- ios면접
- iOS앱 디버깅
- 프로그래머스
- 카카오맵클론
- alamofire
- UIKit
- firebase
- mrc
- AutoLayout
- unittest
- firestore
- Swift디자인패턴
- 시험에자주나오는것만
- Di
- IOS
- 반응형프레임워크
- RxSwift
- ARC
- 앱의생명주기
- 코딩테스트입문
- Safari Inspector
- Swift코딩테스트
- SWIFT
- ReactorKit UnitTest
- hackerrank
- HackersRank
- Today
- Total
목록전체 글 (93)
샘성의 iOS 개발 일지
문제 설명: 가위는 2 바위는 0 보는 5로 표현합니다. 가위 바위 보를 내는 순서대로 나타낸 문자열 rsp가 매개변수로 주어질 때, rsp에 저장된 가위 바위 보를 모두 이기는 경우를 순서대로 나타낸 문자열을 return하도록 solution 함수를 완성해보세요. 내 풀이: import Foundation func solution(_ rsp:String) -> String { // 0인 경우 5로 교체, 아니면 2인지 0인지 다시 삼항연산자로 판별 -> 결과를 합친 후, 문자열 타입으로 변환 return String(rsp.map { $0 == "0" ? "5" : $0 == "2" ? "0" : "2" }.joined()) } 회고: 처음엔 switch 문으로 해결하려고 했다. 하지만 생각해보니 삼항..
문제 설명: 머쓱이는 친구에게 모스부호를 이용한 편지를 받았습니다. 그냥은 읽을 수 없어 이를 해독하는 프로그램을 만들려고 합니다. 문자열 letter가 매개변수로 주어질 때, letter를 영어 소문자로 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. 모스부호는 다음과 같습니다. morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':'u','.....
문제 설명: 개미 군단이 사냥을 나가려고 합니다. 개미군단은 사냥감의 체력에 딱 맞는 병력을 데리고 나가려고 합니다. 장군개미는 5의 공격력을, 병정개미는 3의 공격력을 일개미는 1의 공격력을 가지고 있습니다. 예를 들어 체력 23의 여치를 사냥하려고 할 때, 일개미 23마리를 데리고 가도 되지만, 장군개미 네 마리와 병정개미 한 마리를 데리고 간다면 더 적은 병력으로 사냥할 수 있습니다. 사냥감의 체력 hp가 매개변수로 주어질 때, 사냥감의 체력에 딱 맞게 최소한의 병력을 구성하려면 몇 마리의 개미가 필요한지를 return하도록 solution 함수를 완성해주세요. 내 풀이: import Foundation func solution(_ hp:Int) -> Int { let janggun = [hp / ..
하드웨어적 한계 1. 카메라 기능 (동영상 촬영, 사진 촬영) 2. UIPickerView에서 사진 선택할 때, 사진 확대 축소 실행 불가능 3. 자이로스코프, 근접 센서, 블루투스 등과 같은 대부분의 센서 API의 한계 1. 핸드오프 기능 2. Message UI 3. Apple 푸시 알림 수신 및 전송 기타 1. Archive 불가능 2. 정확한 네트워크 속도를 측정하기 힘들다. (맥의 성능이 아이폰 성능보다 뛰어나기에 시뮬레이터에선 더 빠르게 네트워킹 되는 경우가 잦다)
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bR22yd/btsex1Y2pAD/HkNeymN5nP3IHUddSbzqc0/img.png)
1. Frame 자신(View)이 올라가있는 SuperView의 좌표를 바탕으로 자신(View)의 사이즈와 좌표를 나타낸다. 최하단의 사진에서 B view의 frame는 A view위에 올라가있으므로, CGRect(x: 20, y: 20, width: 40, height: 60)이 될 것이다. 2. Bound 기본적으로 디폴트 좌표를 (x = 0, y = 0)을 갖고 있다. 사이즈인 width, height는 frame과 동일하다. 하지만 frame은 본인의 superView를 기준으로 좌표를 측정했으나, bound는 자신을 기준으로 본다. 즉, 하단의 사진에서 B view의 bound는 A view위에 있던 말던 CGRect(x: 0, y: 0, width: 40, height: 60)이 될 것이다. ..
1. xib. 파일을 이용한 방식 xib 파일 방식으로 생성하면, 스토리보드에서 UI를 구현하는 방식과 동일하게 원하는 컴포넌트를 Drag & Drop 방식으로 간편하게 Custom View를 만들 수 있다. 2. 코드로 구현하는 방식 UIView를 상속받는 클래스를 하나 생성하여 만들어 코드로 원하는 View의 UI를 구현할 수 있다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c01aDW/btsex3oCWIo/o3lnI3ZTDa84kgnDVEovOk/img.png)
문제 설명: 순서쌍이란 두 개의 숫자를 순서를 정하여 짝지어 나타낸 쌍으로 (a, b)로 표기합니다. 자연수 n이 매개변수로 주어질 때 두 숫자의 곱이 n인 자연수 순서쌍의 개수를 return하도록 solution 함수를 완성해주세요. 내 풀이: func solution(_ n:Int) -> Int { // 결과를 카운팅 할 변수 var result = 0 // 바로 나누어떨어지면 result + 1 for i in 1...n { if n % i == 0 { result += 1 } } return result } 회고: 처음엔 2개의 수로 곱해야한다는 것에 사로잡혀 for loop문 2개를 중첩해 풀었다가, 50%는 시간초과로 오답 처리를 받아서 50% 정답률을 받았다. 생각해보니 바로 나누어떨어지는 ..
문제 설명: 외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요. 내 풀이: import Foundation func solution(_ emergency:[Int]) -> [Int] { // [응급도: 위급한순위] 형태의 딕셔너리 변수 var dic = [Int: Int]() // 결과 변수 var result = [Int]() // dic변수의 value에 들어갈 순서 변수 var value = 0 // 큰 순서대로 기존 배열 정렬 후 loop문 돌리기 for i in emergency.sorted(by: >) { ..