일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- docker
- 도커 명령어
- Swift
- 도커 이미지
- 클라우드
- linux
- C++
- 네트워크
- devops
- ios
- 쿠버네티스
- os
- 인프라
- centOS
- AWS
- kubernetes
- 컨테이너
- 프로세스
- swift 클로저
- 부스트코스
- boj
- centOS7
- 리눅스
- k8s
- 도커
- NGINX
- 데브옵스
- 운영체제
- 도커 컨테이너
- Python
- Today
- Total
목록분류 전체보기 (153)
귀염둥이의 메모
enum(열거형) 유사한 종류의 여러 값을 한 곳에 모아서 정의한 것입니다. enum 자체가 하나의 데이터 타입입니다. (카멜케이스를 사용하여 이름을 정의) 각 case는 그 자체가 고유의 값입니다. (각 case에 자동으로 정수값이 할당되지 않음) enum 이름 { case 이름1 case 이름2 case 이름3, 이름4, 이름5 // 한 줄에 여러개 정의 가능 } enum Weekday { case mon case tue case wed case thu, fri, sat, sun } enum 사용 타입이 명확할 경우, 열거형의 이름을 생략할 수 있습니다. switch 구문에서 사용하면 좋습니다. enum Weekday { case mon case tue case wed case thu, fri, sa..
UIKit에서 기본이 되는 좌표계는 좌측 상단 모서리를 원점으로 하며, 제일 왼쪽의 제일 위의 지점이 (0, 0)입니다. 원점으로부터 아래쪽, 오른쪽 방향으로 확장됩니다. 좌표값은 해상도와 상관없이 콘텐츠의 위치를 잡는 부동소수점을 사용하여 나타냅니다. 프레임(frame)은 뷰의 크기와 위치를 슈퍼뷰(SuperView)의 좌표계를 기준으로 합니다. 바운드(bounds)는 뷰의 크기와 위치를 해당 뷰 자신의 좌표계를 기준으로 합니다. frame과 bounds는 CGRect라는 구조체를 통해서 표현됩니다. CGRect는 사각형의 크기와 위치에 대한 정보를 담고 있습니다. CGRect의 origin프로퍼티는 CGPoint 타입으로 사각형의 시작점을 나타냅니다. CGRect의 size프로퍼티는 CGSize타입으..
www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net 1을 start로, 랜선 K개중에서 가장 큰 값을 end로 지정하여 이분 탐색을 진행하면 해결 가능합니다. 조건을 만족하는 mid 값을 찾았을때 break 하고 출력을 했는데, 계속 '틀렸습니다'가 떠서 당황스러웠습니다. 실패 소스코드 #include using namespace std; typedef long long ll; ll k, n, mx; ll arr[10000]; int..
클로저(Closure) 실행 가능한 코드 블럭입니다. 함수와 다르게 이름 정의는 필요하지 않으며, 매개변수 전달과 반환 값이 존재할 수 있습니다. 함수는 이름이 있는 클로저입니다. 일급 객체(First-class-citizen)로 전달 인자, 변수, 상수 등에 저장 및 전달이 가능합니다. 참조타입입니다. 표현방식 중괄호 { }로 감싸져있으며, 괄호를 이용해 파라미터를 정의합니다. -> 를 이용하여 반환 타입을 명시합니다. "in" 키워드를 이용해 실행 코드와 분리합니다. { (매개변수 목록) -> 반환타입 in 실행 코드 } 사용예시 // sum이라는 상수에 클로저를 할당 let sum: (Int, Int) -> Int = { (a: Int, b: Int) in return a + b } let resu..
programmers.co.kr/learn/courses/30/lessons/43164# 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr DFS(백트래킹)를 이용하여 해결했습니다. LEVEL 3 문제인 만큼 여러 가지 경우를 고려해야 했습니다. 처음에는 다양한 테스트 케이스를 생각하지 못하고 코드를 작성하였는데 1번과 2번 테이스 케이스에서 실패를 했습니다. 알파벳 우선순으로 방문을 해야 하기 때문에 input값인 tickets을 정렬한 상태로 DFS를 진행했습니다. 실패 소..
www.acmicpc.net/problem/15666 15666번: N과 M (12) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 소스코드 #include using namespace std; int n, m; int arr[7]; int vis[7]; int result[7]; void dfs(int k, int start) { if (k == m) { for (int i = 0; i m; for (int i = 0; i > arr[i]; sort(arr, arr + n); d..
스위프트 타입 캐스팅 인스턴스의 타입을 확인하는 용도로 쓰입니다. 클래스의 인스턴스를 부모(Up) 혹은 자식(Down) 클래스의 타입으로 사용할 수 있는지 확인하는 용도 is, as를 사용합니다 타입 캐스팅 예제 class Person { var name: String = "" func breath() { print("숨을 쉽니다.") } } class Student: Person { var school: String = "" func goToSchool() { print("등교를 합니다.") } } class UniversityStudent: Student { var major: String = "" func goToLib() { print("도서관을 갑니다..") } } // 인스턴스 생성 var j..
www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 백트래킹으로 모든 경우의 수를 확인했다. 선택된 연산자를 used 배열에 저장하고, 연산자를 n - 1개 선택했을 때 나열된 숫자들에 대해서 연산을 진행했다. 그리고 max와 min을 갱신했다. 소스코드 #include using namespace std; int n; int arr[12]; int used[12]; int token[4]; int mn =..
www.acmicpc.net/problem/2573 2573번: 빙산 첫 줄에는 이차원 배열의 행의 개수와 열의 개수를 나타내는 두 정수 N과 M이 한 개의 빈칸을 사이에 두고 주어진다. N과 M은 3 이상 300 이하이다. 그 다음 N개의 줄에는 각 줄마다 배열의 각 행을 www.acmicpc.net DFS 또는 BFS를 이용할 수 있는데, DFS를 이용했다. 다음 과정을 계속 반복시킨다. check, vis 등 배열 및 변수 초기화 빙산의 개수를 count 한다. (cnt변수 이용) cnt값을 확인하여 2개이상인지? 아니면 0인지? (탈출 조건 확인) 2 이상이면 조건을 만족했으므로 flag = true 0이면 빙산이 다 녹았기 때문에 0을 출력해야 함. checkSide() - 각 칸마다 바닷물에 ..
www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net 시뮬레이션 문제로 dfs를 이용하여 쉽게 풀 수 있다. rotateGear 함수를 구현해서 톱니 번호, 회전 방향을 인자로 받아서 톱니 회전을 수행한다. 방문 체크를 하며 주어진 조건에 맞게 dfs를 구현. 소스코드 #include using namespace std; int k, result; int gear[5][8]; int rot[100][2]; int vis[5]; void rotateGear(i..