전체 글

코딩 테스트

코딩 테스트 - [day3] 백준: 1110 - 더하기 사이클

문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 자리 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26부터 시작한다. 2+6 = 8이다. 새로운 수는 68이다. 6+8 = 14이다. 새로운 수는 84이다. 8+4 = 12이다. 새로운 수는 42이다. 4+2 = 6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 ..

코딩 테스트

코딩테스트 - [day1]약수의 개수와 덧셈

문제 설명 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요. 입출력 예 #1 다음 표는 13부터 17까지의 수들의 약수를 모두 나타낸 것입니다. 수 약수 약수의 개수 13 1, 13 2 14 1, 2, 7, 14 4 15 1, 3, 5, 15 4 16 1, 2, 4, 8, 16 5 17 1, 17 2 따라서, 13 + 14 + 15 - 16 + 17 = 43을 return 해야 합니다 나의 풀이 func solution(_ left:Int, _ right:Int) -> Int { var addResult = [Int]() v..

알고리즘

알고리즘 - [day1]버블 정렬

버블정렬 버블 정렬의 시간 복잡도 = O(N^2) 다음의 숫자들을 오름차순으로 정렬하는 프로그램을 작성하세요 1 10 5 8 7 6 4 3 2 9 버블 정렬은 선택 정렬과 마찬가지로 직관적인 해결 방법이다. 인접해 있는 두 숫자끼리 비교를 해서 더 작은 숫자를 앞으로 보내주는 것을 반복하는 것이다. 즉, 옆에 있는 값과 비교하여 더 작은 값을 반복적으로 앞으로 보내는 정렬 방법이다. 버블 정렬은 정렬 알고리즘 중에서 구현은 가장 쉽지만 가장 비효율적인 알고리즘이다. var i: Int var j: Int var temp: Int var arr = [1,10,5,8,4,2,5,7,4,3] for a in 0...10 { for b in 0...(9-a) { if arr[b] > arr[b+1] { temp..

알고리즘

알고리즘 - [day1]정렬 알고리즘의 개요와 선택 정렬

일반적으로 알고리즘을 공부할 때 가장 먼저 풀어보는 문제는 "정렬(sort)"문제이다. 다음의 숫자들을 오름차순으로 정렬하는 프로그램을 작성하세요 1 10 5 8 7 6 4 3 2 9 선택 정렬 시간복잡도: O(N^2) - 가장 작은 것을 선택해서 제일 앞으로 보내는 알고리즘 - 가장 원시적이고 기초적인 방법 var min: Int var index: Int var temp: Int var arr = [1,10,5,8,7,6,4,3,2,9] for i in 0...10 { min = 9999 for j in i...10 { if min > arr[j] { min = arr[j] index = j } } temp = arr[i] arr[i] = arr[index] arr[index] = temp } 위 코..

알고리즘

알고리즘 - [day1]알고리즘의 개요

알고리즘이란 문제를 해결하는 절차이다. 알고리즘은 입력, 출력, 유한성, 명백성, 효과성을 만족해야 한다. 알고리즘은 분석을 통해 좋고 나쁨을 평가할 수 있다. 알고리즘은 기초 프로그래밍과 자료구조를 공부한 이후에 배우면 좋다. 알고리즘은 논리이며 수학이고 실질적인 개발에 적용되는 기초적인 아이디어이다. 알고리즘은 '개발'의 전체 과정에 사용된다. 실제 프로그램을 개발할 때 효율적인 알고리즘을 적용함으로써 원하는 결과를 도출해야 한다. 스케줄 관리 프로그램: 달력에서 특정한 달에 해당하는 일 수는 어떻게 구할까? 내비게이션 프로그램: 여러 개의 중간 지점을 거쳐서 특정 지점으로 갈 때 가장 빠른 길은 무엇일까? 게시판 프로그램: 한 페이지당 게시글을 10개씩 출력해야 하는데 어떻게 출력할까? 출처: ht..

카테고리 없음

개인정보 처리방침

('https://www.notion.so/Flow-API-2883f2491c51498e887'이하 'Flooming')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. ○ 이 개인정보처리방침은 2022년 8월 30부터 적용됩니다. 제1조(개인정보의 처리 목적) ('https://www.notion.so/Flow-API-2883f2491c51498e887'이하 'Flooming')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목적이 변경되는..

iOS 개발

iOS개발 - Toast_Swift 라이브러리(토스트 메시지 띄우기)

iOS에서 Toast메시지를 사용해보고자 했다. 검색 결과 비교적 예전에는 라이브러리가 존재하지 않아 사용자가 직접 View를 구성해 Toast 메시지를 띄웠던 것 같다. 그러나 Toast 메시지를 활용할 수 있는 외부 라이브러리가 존재한다는 것을 알게 되어 이를 사용해보았다. cocoapod을 활용하는 방법은 검색을 하면 다양한 블로그에서 이를 알려주고 있으니 이는 생략하도록 하겠다. podfile에 pod 'Toast-Swift', '~> 5.0.1' 을 입력한 후 pod install을 진행하면 라이브러리를 사용할 수 있다. 그 후 다음과 같이 라이브러리를 import한 후, Toast 메시지가 필요한 곳에 다음과 같은 코드를 작성하면 된다. import Toast_Swift self.view.ma..

iOS 개발

iOS 개발 - 앨범에 이미지 다운로드

특정 버튼을 눌렀을 때 앨범에 이미지를 다운로드하려는 기능을 구현하고자 했다. 우선은 info에 다음과 같은 항목들을 추가했다. [Privacy - Photo Library Additions Usage Description] 앱이 사용자의 사진 라이브러리에 대한 추가 전용 액세스를 요청하는 이유를 사용자에게 알려주는 메시지이다. [Privacy - Camera Usage Description] 앱이 기기의 카메라에 대한 액세스를 요청하는 이유를 사용자에게 알려주는 메시지이다. [Privacy - Photo Library Usage Description] 앱이 사용자의 사진 라이브러리에 대한 액세스를 요청하는 이유를 사용자에게 알려주는 메시지이다. 기타 info리스트에 대한 설명은 아래의 블로그를 참고하면..

bamtorii
bamtori