
Control Event(컨트롤 이벤트) 종류 컨트롤이 발생했을 때 그 컨트롤의 종류를 의미하며 UIControl에 Event라는 타입으로 정의되어 있습니다. 컨트롤 객체에 발생할 수 있는 이벤트의 종류 이벤트 종류 설명 표현법 touchDown 컨트롤을 터치했을 때 발생하는 이벤트 UIControl.Event.touchDown touchDownRepeat 컨트롤을 연속 터치(반복) 할 때 발생하는 이벤트 UIControl.Event.touchDownRepeat touchDragInside 컨트롤 범위 내에서 터치한 영역을 드래그 할 때 발생하는 이벤트 UIControl.Event.touchDragInside touchDragOutside 터치 영역이 컨트롤의 바깥쪽에서 드래그 할 때 발생하는 이벤트 U..

📎 간략한 문제 정리 N개의 좌표 X1~XN이 있을 때 X1'는 X1보다 작은 서로다른 요소의 개수를 의미합니다. 📈 문제 분석 주어진 배열을 정렬한 후 문제를 처리하면 쉽게 접근할 수 있습니다. 🙋♂️ 내가 처음 생각한 해결 방법 가장 단순하게 생각해보면 전체를 순회하며 기준을 세우고, 자신을 제외한 다른 요소들을 검색해보며 더 작은 값이면 count += 1의 로직을 구현할 수 있습니다. 하지만 이것은 O(N^2)이며 주어진 조건 1 Stack의 전형적인 문제 중 특정 요소의 왼쪽 값 중 자신보다 크면서 인덱스가 가장 큰 요소를 찾는 문제가 있습니다. 이 문제처럼 왼쪽만 관찰하며 더 큰 값일때만 pop하는 해결방식을 활용한다면 O(N)이 가능할 수 있을 것 같습니다. Counting Sort..

🎯 MVC(Model - View - Controller)? 💬 what is MVC? 기본적으로 시스템 안의 모든 객체는 세가지의 카테고리로 나눌 수 있습니다. Model: What your application is about (but not how it is displayed) 앱에서 UI와 독립적인 객체들로 '무엇'에 해당하는 요소들을 가지고 있습니다. 예를 들어, Concentration Game에서는 게임 자체를 할 줄 아는 부분에 해당합니다. 카드가 매치되는지, 카드를 제거해야하는지, 언제 카드를 뒤집어야하는지 같은 부분입니다. (Knowledge of the game) Controller: How your Model is presented to the user (UI Logi..

📱 [스탠포드] iOS 강의 학습하기 (CS193p by Paul Hegarty in Stanford) 스탠포드의 Paul Hegarty 교수님께서 진행하신 CS193p 강의를 통해 iOS에 대한 전반적인 기초를 알아보고자 합니다. 블로그에는 강의 단위로 업로드할 계획입니다. 단순히 강의 내용을 필기하는 블로깅이 아니라 추가적인 자료 조사나 다른 강의 내용에서 습득한 내용을 추가하는 형식의 블로그가 될 예정입니다. 🎯 Lecture.01 Introduction iOS에 대한 전반적인 설명과 사용법에 대한 간단한 설명을 진행합니다. 실습해본 git Repository 📝 Swift 언어의 특징 Swift는 객체 지향 프로그래밍(Object Oriented Prograaming)이 가능하지만 함수 지향 프로..

📎 간략한 문제 정리 Back Tracking에서 가장 유명한 문제 중 하나인 N-Queen을 다시 풀어보았습니다. 체스에서 Queen은 수직, 수평, 대각선 방향으로 거리의 제한없이 이동할 수 있을 때, N개의 Queen을 배치할 수 있는 모든 경우의 개수를 출력하는 문제입니다. 📈 문제 분석 이 문제의 포인트는 크게 두가지 입니다. BackTracking을 어떻게 구현할 것인가 Queen을 배치 가능한지 여부 판단하기 Back Tracking 부분은 N과 M 문제와 크게 다르지 않습니다. 반복을 하며 조건을 확인하는 BackTracking의 기본 구조를 가지고 있습니다. 방문 여부를 체크하고, 배치가 완성되면 배치 가능한 모양이 한개 생성되므로 결과에 +1을 해줍니다. 더 까다로운 포인트는 2번인데,..

📎 간략한 문제 정리 자연수 N과 M이 주어지고, 아래 조건을 만족하는 길이가 M인 수열을 모두 구합니다. 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 고른 수열은 오름차순이어야 한다. 📈 문제 분석 N과 M(1)과 거의 비슷한 문제입니다. 오름차순을 이루는 부분 수열을 찾는 문제로 중복이 없고, 부분 수열의 크기가 정해진 것이 포인트입니다. 🙋♂️ 내가 처음 생각한 해결 방법 사실 파이썬에는 모듈인 itertools에 combination 함수가 존재합니다. 그래서 N의 요소에서 M개를 뽑는 것은 어렵지 않지만 일부러 이 방법을 사용하지 않았습니다. 이 모듈을 사용하지 않을 때 필요한 것은 모든 요소를 접근하며 조건에 만족할 경우 결과에 넣는 작업입니다. 이 때 사용되는 백트래킹(Back..

📱 Auto Layout - Anatomy of a Constraint 🎯 Auto Layout이란? Auto Layout Guide의 정의를 살펴보면 아래와 같습니다. Auto Layout dynamically calculates the size and position of all the views in your view hierarchy, based on constraints placed on those views. 오토 레이아웃은 뷰에 정의된 제약들을 기반으로 뷰 계층에서 모든 뷰들의 크기와 위치를 동적으로 계산해줍니다. 예시는 다음과 같습니다. For example, you can constrain a button so that it is horizontally centered with an Im..

📎 간략한 문제 정리 위의 그림처럼 한 변의 길이가 2의 거듭제곱꼴인 N의 정사각형(NxN)이 존재합니다. 이 사각형은 길이가 1인 단위 정사각형으로 이루어져 있으며 색깔을 가집니다. 만약 이 정사각형이 모두 색깔이 같다면 자르지 않지만, 하나라도 색깔이 다른 부분이 있다면 종이 가로 세로의 가운데를 잘라 4등분하여 위의 작업을 반복합니다. 모든 작업이 완료되면 흰 종이(0으로 마킹)의 개수과 파란 종이(1로 마킹)의 개수를 출력합니다. 📈 문제 분석 전형적인 분할 정복 문제입니다. 특정 시점에서 조건에 맞는지 확인(모두 같은 색)한 후, 조건에 맞으면 추가 작업을 진행하지 않고, 조건을 만족하지 않으면 재귀적으로 문제를 다시 해결해나가는 구조입니다. Merge Sort(병합 정렬)처럼 개념으로 배울 때..
- Total
- Today
- Yesterday
- Distinct#Codility#Python
- NumberofDiscIntersections#Codility#Sort#Python
- 배열합치기#분할정복#BOJ#Python
- django#slicing
- 공유기 설치#BOJ#이분탐색#Python
- 미로 탐색#백준알고리즘#Python
- PassingCars#Codility#Python
- N으로 표현#DP#Programmers#Python
- 터틀비치#리콘#xbox#controller
- 랜선자르기#이분탐색#BOJ#Python
- 쿼드트리#BOJ#분할정복#Python
- 백준 알고리즘#BackTracking
- filter#isalnum#lower
- Triangle#Sorting#Codility#Python
- 텀 프로젝트#백준알고리즘#Python
- 병든 나이트#BOJ#탐욕법#Python
- django
- Brackets#Stacks and Queues#Codility#Python
- Swift#Tuples#Range
- 암호코드#dp#BOJ#Python
- 날짜 계산#BOJ#완전탐색#Python
- 나무자르기#BOJ#이분탐색#Python
- 섬의개수#백준알고리즘#Python
- 종이자르기#분할정복#BOJ#Python
- 리모컨#완전탐색#BOJ#Python
- 파이썬알고리즘인터뷰#4장
- 순열사이클#BOJ#Python
- 토마토#백준알고리즘#Python
- API#lazy#
- 반복수열#백준알고리즘#Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |