분류 전체보기 (268) 썸네일형 리스트형 [백준/Swift] 11052 : 카드 구매하기 BOJ_11052.swift 11052 : 카드 구매하기/ 문제 소개 풀이 과정 코드 구현 https://www.acmicpc.net/problem/11052 11052번: 카드 구매하기 첫째 줄에 민규가 구매하려고 하는 카드의 개수 N이 주어진다. (1 ≤ N ≤ 1,000) 둘째 줄에는 Pi가 P1부터 PN까지 순서대로 주어진다. (1 ≤ Pi ≤ 10,000) www.acmicpc.net 11052 : 카드 구매하기 / 문제 소개 예전에 dp문제를 풀 때 이 글을 보고 뒤로가기를 눌렀던 적이 있다. 민규 소비 스타일을 좀 바꿔야하는데 민규는 카드깡을 한다. 카드팩에 들어있는 카드에 따라 가격이 다르지만 같은 카드 N개를 구매 할 때 민규가 지불해야 하는 금액이 최대여야 한다... (이래야 좋은거 나.. [Swift] 클래스 2단계 초기화와 안전점검 완벽 이해!! 2단계 초기화와 안전 점검 in class 2단계 초기화 안전 점검 단계 클래스 초기화 1단계 클래스 초기화 2단계 클래스와 초기화에 대한 개념이 가물~가물 하다면?! -> 클래스와 초기화 글 다시보기 클래스에서 자동, 지정 초기화, 편리 초기화 개념이 가물~가물~ 하다면?! -> 자동, 지정, 편리 초기화 글 다시보기 2단계 초기화 클래스 초기화는 2 단계를 거쳐서 진행된다. 해당 클래스의 저장 프로퍼티는 초기값으로 모두 초기화 ( 부모 또한 super Designated or 자식 클래스에서 전부 초기화) 자식방향으로 내려오며 초기화된 프로퍼티 중 일부를 필요에 맞게 커스터마이징 하는 단계 2 단계에서 에러없이 초기화가 완료되었음을 보장하기 위해 4단계 안전 점검을 진행한다. 안전 점검 단계 안전 점.. [Swift] 자동, 지정, 편의 초기화(in class). 연쇄 호출 관계 뿌수기!! 초기자 연쇄 호출 관계 부수기! About_Designated Initializer Automatic initializer inheritance About Convenience Initializer 호출 규칙(지정 초기자와 편의 초기자) 클래스와 초기화에 대한 개념이 가물~가물 하다면?! -> 클래스와 초기화 글 다시보기 About Designated Initializer(지정 초기화) 지정 초기화는 기본 초기화입니다. 옵셔널 타입이 아닌 저장 프로퍼티를 전부 초기화 시켜 주어야 한다. else error ( 또한 super클래스의 초기화 메서드도 호출 해주어서 초기화 체인을 이룰 수 있도록 하는 초기화입니다) init(parameters) { statements } 따라서 클래스는 반드시 한개 이상의 .. [Swift] class 초기화. 왜 super.init()을 쓰는가? (오버로딩, 오버라이딩) 왜 super.init()을 쓰는가? 클래스와 초기화(Initialization) 상속받는 클래스의 경우 오버라이딩(Override)과 오버로딩(Overloading) 클래스와 초기화(Initialization) Swift는 클래스에서 저장 프로퍼티를 자동적으로 초기화 해주지 않는다. 멤버와이즈 초기화 메서드를 지원해주는 구조체와 달리 개발자가 직접 명시적인 초기화를 통해 클래스 내 존재하는 모든 저장 프로퍼티들의 값을 넣어주어야 한다. /** * x = 변수 선언과 동시에 값 할당 * y = init()을 통해 초기화 */ class point { var x : Int = 0 var y : Int init() { y = 0 } } 이 외에는 옵셔널 타입으로 만들면 초기화를 하지 않아도 자동으로 nil타.. [백준/Swift] 2133 : 타일 채우기 문제 완전 뿌수기!! BOJ_2133.swift 2133 : 타일 채우기 / 문제 소개 풀이 과정 코드 구현 https://www.acmicpc.net/problem/2133 2133번: 타일 채우기 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. www.acmicpc.net 2133 : 타일 채우기 / 문제 소개 3*N 크기의 벽을 2*1 , 1*2 크기의 타일로 채우는 경우의 수를 구하는 문제입니다. 이 문제도 패턴이 있기 때문에 N이 증가함에 따라 이전에 구한 최대 경우의 수를 반복적으로 필요로 합니다. 풀이 과정 이 문제를 풀어나갈 때 N == 1 , 2 ,3 ,4 ... 30 까지의 경우가 있는데 dp배열 크기 : 31 인 Int형 배열에 n == 1 ~ N 일때 최대 값을 저장해 나.. [백준/Swift] 1904 : 01타일 BOJ_1904.swift 1904 : 01타일 / 문제 소개 풀이 과정 코드 구현 https://www.acmicpc.net/problem/1904 1904번: 01타일 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이 www.acmicpc.net 1904 : 01타일 / 문제 소개 현재 있는 타일은 낱장 타일 1 낱장 두개 붙인 타일 00 총 2가지가 존재한다. 낱장 타일 0 은 존재하지 않으므로 01 , 10 은 만들 수 없다. 풀이 과정 이 문제를 풀어 나갈 때 규칙을 찾아야 합니다. N = 1 타일 1 만 사용할 수있습니다. dp[1] = 1 (최대) N .. [백준/Swift] 11727 : 2×n 타일링 2 BOJ_11727.swift 11727 : 2xn 타일링2 / 문제 소개 풀이 과정 코드 구현 https://www.acmicpc.net/problem/11727 11727번: 2×n 타일링 2 2×n 직사각형을 1×2, 2×1과 2×2 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×17 직사각형을 채운 한가지 예이다. www.acmicpc.net 11727 : 2xn 타일링2 / 문제 소개 2*n ( 1 2 { for i in 3...n { dp[i] = (dp[i-1] + 2*dp[i-2]) % 10007 } } print(dp[n]) } BOJ_11727() visit my github [백준/Swift] 18405 : 경쟁적 전염 BOJ_18405() 18405 : 경쟁적 전염/ 문제 소개 풀이 과정 코드 구현 https://www.acmicpc.net/problem/18405 18405번: 경쟁적 전염 첫째 줄에 자연수 N, K가 공백을 기준으로 구분되어 주어진다. (1 ≤ N ≤ 200, 1 ≤ K ≤ 1,000) 둘째 줄부터 N개의 줄에 걸쳐서 시험관의 정보가 주어진다. 각 행은 N개의 원소로 구성되며, 해당 위치 www.acmicpc.net 18405 : 경쟁적 전염/ 문제 소개 이 문제는 시험관 안에 초기 바이러스들이 존재한다. 이때 바이러스는 1~K 번까지 반드시 존재한다. 이때 주의할 점이 특정 바이러스 종류가 여러 개 존재할 수 있다. 왼쪽 그림은 k = 3일때 초기 바이러스 위치이다. 1초마다 바이러스들은 상 하 .. 이전 1 ··· 23 24 25 26 27 28 29 ··· 34 다음