분류 전체보기
[백준 BOJ] BOJ-1059 좋은 구간
#1059 좋은 구간 문제 정리 풀이 import Foundation let l = Int(readLine()!)! let s = Set(readLine()!.split(separator: " ").map { Int($0)! }) let n = Int(readLine()!)! var min = 1 var max = 1000 // 0. n이 집합 S에 속하는 경우 if s.contains(n) { min = n max = n } else { // 0. n-1 방향으로 진행하면서 집합 S와 일치하는 값이 있으면 직후의 값을 min에 저장 for i in stride(from: n, through: 1, by: -1) { if s.contains(i) { min = i+1 break } } // 0. n+1 ..
[백준 BOJ] BOJ-1010 다리 놓기
#1010 다리 놓기 문제 정리 풀이 import Foundation let t = Int(readLine()!)! var nm: [[Int]] = [] for _ in 0.. Double { return factorial(n) / (factorial(n - r) * factorial(r)) } func factorial(_ n: Int) -> Double { return (1..
[백준 BOJ] BOJ-1008 A/B
#1008 A/B 문제 정리 정수끼리의 나눗셈은 / 사용 시 나머지를 제외한 정수부분만 나오고 % 사용 시 나머지만 나오게 된다. 어떻게 소숫점까지 출력할 지가 관건인 문제였다. 풀이 import Foundation let input = readLine()!.split(separator: " ").map { Double($0)! } print(input[0] / input[1]) 실수끼리의 나눗셈은 소숫점까지 나온다는 점을 이용해 풀었다. 풀고나서 알게된 것 map을 통한 형변환은 신이다..
[소프트웨어공학] 클래스 다이어그램
클래스 다이어그램 시스템의 정적 구조 시스템을 구성하는 클래스와 그들 간의 관계 표현 클래스 이름, 속성, 연산 속성과 연산의 접근 제어자 + (public), - (private), # (protected), ~ (package) 속성의 표현 static은 밑줄 [+ or - or # or ~] 이름: 타입[다중성 정보][=초기값] 연산의 표현 static은 밑줄 [+ or - or # or ~] 이름(인자1: 타입1, ..., 인자n: 타입n): 반환타입 표현식이 Swift 같네요 public func someFunc(num: Int, name: String) -> String 이런 느낌 제약 조건 { } 또는 노트 심볼 이용 다중성 클래스의 관계 연관, 일반화, 실체화, 집합, 의존 관계 클래스의 ..
[소프트웨어공학] 모델링, UML, 유스케이스 다이어그램
1. 소프트웨어 개발과 모델링 모델링 해석의 공유 및 타당성 검토 개발할 시스템 구체화 / 가시화 시스템의 구조와 행위 명세 시스템 구축 틀 제공 2. UML UML이란? 대표적인 시스템 모델링 언어(unified modeling language) 시스템을 상호작용하는 객체들로 모델링 분석 모델(문제 영역)과 설계 모델(해결 영역)이 동일 다이어그램(diagram) 종류 행위 다이어그램: 활동, 상태 머신, 유스케이스(UseCase) 구조 다이어그램: 클래스, 객체, 복합체 구조, 배치, 컴포넌트 패키지 상호작용 다이어그램: 순차, 상호작용 개요, 통신, 타이밍 유스케이스 다이어그램 사용자 관점에서 시스템 사용 목적 기술 목적 달성을 위한 사용자와 시스템 간의 상호작용 시스템의 기능 서비스 정의, 시스템..
Swift 5.7 - if let 문 간략화
Swift 5.7 의 변경사항 중 당장 피부에 와닿을 변경점인 if let 문이 어떻게 개선됐는지 알아보려고 합니다. Swift 5.7 의 변경사항은 아래 글에서 확인하실 수 있습니다! Swift 5.7 릴리즈 - 언어 및 표준라이브러리, 개발자 경험아래 글은 원문 링크에 구글 번역과 조심스러운 의역으로 이루어져있습니다! 틀린 내용이 있으면 댓글로 알려주세요:) 원문 바로가기 Swift 5.7 Released! Swift 5.7 is now officially released! Swift 5.7 inclu..youngkdevlog.tistory.com let foo: Foo? = ...if let foo = foo { someFunc()}// 또는if let foo = foo else { return ..