[Swift 알고리즘] 백준 BOJ 2752 - 세 수 정렬
·
코딩테스트
BOJ 2752 - 세 수 정렬 안녕하세요. 개발 중인 정주입니다. 오늘은 BOJ의 2752번 세 수 정렬 문제를 풀었습니다. 쉬운 문제이지만 정렬에 대해 간단히 정리하기 위해 포스팅 남깁니다. 자세한 정렬 분석은 따로 포스팅을 작성하도록 하겠습니다. Github https://github.com/jeongju9216/swiftAlgorithm 문제 링크 https://www.acmicpc.net/problem/2752 풀이 Swift의 내장 함수 sort() 혹은 sorted()를 사용하면 쉽게 해결이 됩니다. Swift의 정렬은 Tim Sort로 되어 있으며 시간 복잡도는 O(nlogn)입니다. Tim Sort는 Insert Sort와 Merge Sort가 섞여있는 방식인데요. 자세한 건 따로 포스팅..
[Swift 알고리즘] 백준 BOJ 1712 - 손익분기점
·
코딩테스트
BOJ 1712 - 손익분기점 안녕하세요. 개발 중인 정주입니다. 오늘은 BOJ의 1712번 손익분기점 문제를 풀었습니다. Swift로 처음으로 시간 복잡도를 생각했어야 하는 문제였습니다. 자세한 내용은 본문에서 보시죠. Github https://github.com/jeongju9216/swiftAlgorithm 문제 링크 https://www.acmicpc.net/problem/1712 풀이 이 문제의 시간 제한은 0.35초이고 input은 21억 이하입니다. 따라서 반복문 O(n)의 시간복잡도로는 문제를 풀 수 없습니다. 더 자세한 이야기는 코드를 보면서 설명하겠습니다. 바로 해답을 보고 싶은 분은 최종 코드의 설명을 봐주세요! 1차 코드 let input = readLine()!.split(sep..
[Swift 알고리즘] 백준 BOJ 1297 - TV 크기
·
코딩테스트
BOJ 1297 - TV 크기 안녕하세요. 개발 중인 정주입니다. 오늘은 BOJ의 1297번 TV 크기 문제를 풀었습니다. 수학적인 지식이 필요하고 그 지식을 Swift로 작성할 수 있느냐가 포인트였습니다. Github https://github.com/jeongju9216/swiftAlgorithm 문제 링크 https://www.acmicpc.net/problem/1297 풀이 피타고라스 정리와 제곱근을 이용한 문제입니다. 1. 대각선^2 = 가로^2 + 세로^2 2. 대각선^2 = (가로 비율 * x)^2 + (세로 비율 * x)^2 3. x = (대각선^2 / (가로비율^2 + 세로 비율^2))의 제곱근 4. result = x * 가로비율, x * 세로 비율 pow(), sqrt()를 이용해서 ..
[Swift 알고리즘] 백준 BOJ 11654 - 아스키 코드
·
코딩테스트
[Swift 알고리즘 ] BOJ 11654 - 아스키 코드 안녕하세요. 개발 중인 정주입니다. 오늘은 Swift로 아스키 코드를 출력하는 방법에 대해 알아보겠습니다. C나 C++에서는 단순히 정수로 출력하면 되는데 Swift에서는 약간의 변환 과정이 필요합니다. 바로 보시죠! Github https://github.com/jeongju9216/swiftAlgorithm 문제 정보 번호, 이름 : 11654 아스키 코드 분류 : 구현 문제 링크 https://www.acmicpc.net/problem/14645 풀이 입력을 아스키 코드로 출력하면 됩니다. 코드로 설명하겠습니다. 최종 코드 let inputCh = Character(readLine()!) let asciiValue = inputCh.asci..
[Swift 알고리즘] 백준 BOJ 10757 - 큰 수 A+B
·
코딩테스트
[Swift 알고리즘] BOJ 10757 - 큰 수 A+B 안녕하세요. 개발 중인 정주입니다. 오늘은 BOJ 10757번의 큰 수 A+B를 풀어보았습니다. Swift로 Big Integer 문제를 푼 건 처음이었습니다. 다른 언어로는 풀어본 적이 있어서 푸는 방법은 아는데 그것을 Swift로 구현하는 것이 포인트였습니다. Github https://github.com/jeongju9216/swiftAlgorithm 문제 정보 번호, 이름 : 10757 큰 수 A+B 분류 : 수학, 구현, 사칙 연산, 임의 정밀도 / 큰 수 연산 문제 링크 https://www.acmicpc.net/problem/10757 풀이 큰 수 문제는 Int형의 최댓값을 넘는 input이 들어왔을 때 처리를 어떻게 할 것인가가 ..
[Swift 알고리즘] BOJ 2475 - 검증수
·
코딩테스트
[Swift 알고리즘] BOJ 2475 - 검증수 안녕하세요. 개발 중인 정주입니다. 오늘은 BOJ 2475번 검증수 문제를 풀어보았습니다. Github https://github.com/jeongju9216/swiftAlgorithm 문제 정보 번호, 이름 : 2475 검증수 분류 : 수학, 구현, 사칙연산 문제 링크 https://www.acmicpc.net/problem/2475 풀이 2475번 검증수는 단순 계산 문제입니다. 5개의 input값마다 제곱해서 더한 뒤 마지막에 10으로 나눈 나머지를 출력하면 됩니다. 입력의 범위는 00000 ~ 99999까지 이므로 Big Integer 고민도 하지 않아도 됩니다. 마지막 검증으로 가장 예외적이라고 생각할 수 있는 00000 입력이 제대로 동작하는지..
[Xcode] Swift 알고리즘 - Xcode 환경 세팅
·
iOS/Xcode
Swift 알고리즘 - Xcode 환경 세팅 안녕하세요. 개발하는 정주입니다. 오늘은 Swift로 알고리즘을 하기 전 Xcode에서 알고리즘을 하기 위한 세팅을 먼저 진행하겠습니다. 세팅이라고 해도 복잡한 것은 없으니 어렵게 생각하지 않으셔도 됩니다. 개발 환경 MacBook Pro (Retina, 15-inch, Mid 2015) macOS Big Sur(11.5) 프로세서 : 2.5 GHz 쿼드 코어 Intel Core i7 메모리 : 16GB 1600 MHz DDR3 그래픽 : Intel Iris Pro 1536 MB Xcode Xcode 12.5.1 왜 굳이 Xcode로? 힘들게 Xcode의 프로젝트로 알고리즘을 공부하는 이유에 대해 궁금하실 텐데요. 바로 Swift의 입력 함수인 readLine..
유정주
'swift 알고리즘' 태그의 글 목록 (14 Page)