일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- segue
- ios15
- CoreLocation
- 코딩테스트
- cocoapods
- image
- pod install
- ViewModifier
- MapKit
- Java
- android
- Kotlin
- programmers
- AsyncImage
- NotificationCenter
- UIStackView
- 백준
- UserDefaults
- EventKit
- SWIFT
- Appearance변경
- snapkit
- ios
- swiftUI
- alamofire
- format형식
- Alert
- kakaomap
- autolayout
- SwiftUI_Preview_Provider
- Today
- Total
목록알고리즘 (12)
감자주먹밥
https://leetcode.com/problems/reverse-vowels-of-a-string/solutions/3329717/swift-solution-beats-100-easy-to-understand/?envType=study-plan-v2&envId=leetcode-75 Swift solution [beats 100%] (easy to understand) - Reverse Vowels of a String - LeetCode View Nihad_s's solution of Reverse Vowels of a String on LeetCode, the world's largest programming community. leetcode.com "hello" 와 같은 문자열의 모음만 reve..
https://leetcode.com/problems/kids-with-the-greatest-number-of-candies/description/?envType=study-plan-v2&envId=leetcode-75 Kids With the Greatest Number of Candies - LeetCode Can you solve this real interview question? Kids With the Greatest Number of Candies - There are n kids with candies. You are given an integer array candies, where each candies[i] represents the number of candies the ith k..
프로그래머스 풀 때도 봤던 문제. https://leetcode.com/problems/greatest-common-divisor-of-strings/description/?envType=study-plan-v2&envId=leetcode-75 Greatest Common Divisor of Strings - LeetCode Can you solve this real interview question? Greatest Common Divisor of Strings - For two strings s and t, we say "t divides s" if and only if s = t + ... + t (i.e., t is concatenated with itself one or more times). ..
문제 7568번: 덩치 7568번: 덩치 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩 www.acmicpc.net 문제 해결 키, 몸무게 둘 다 큰 사람이 덩치가 크다는 것을 기억해두자. tuple을 사용하여 입력받은 값을 저장하고, 하나씩 비교하면 해결 할 수 있다! 코드 typealias info = (Int, Int) var count: Int = Int(readLine()!)! var people: [info] = []//[(55, 185), (58, 183), (88, 186), (60, 175), (46, 155)] var ra..
문제 2231번: 분해합 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 문제 해결 가장 작은 수부터 입력받은 수 전까지 하나씩 올라가며 분해합이 입력받은 값과 맞는지 확인하면 된다. 시간이 많이 들긴 하지만 범위가 크지 않아 성공할 수 있다. 각 자리수의 합은 나머지로 구할 수 있었지만, map과 reduce를 써보고 너무 재미있어서 적용해 봤다. 코드 var input = Int(readLine()!)! var answer = 0 var sum = 0 for item in (i..
문제 2798번: 블랙잭 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 문제 해결 부른 값 보다 크지 않은 가까운 값 뽑거나, 같은 값을 출력해야 한다. 3중 for문으로 카드 3장을 선택해 합하고, 맞는 값인지 확인하기. 코드 var info: [Int] = readLine()!.split(separator: " ").map{Int($0)!} var card: [Int] = readLine()!.split(separator: " ").map{Int($0)!}.sorted(by:
문제 코딩테스트 연습 - 체육복 문제 분석 여분이 있는 학생은 앞, 뒤 학생에게만 빌려줄 수 있고, 여분이 있어도 도난 당했을 수 있다는 전제를 처리를 하고, 빌려주는 로직을 짜면 될 거 같다. 알고리즘 Set의 차집합을 활용하여 lost와 reserve 배열을 비교하여 여유분을 도둑맞은 처리를 해 준다. reserve의 값을 가지고 lost를 순회하면서 빌려줄 수 있는지 확인, 가능하다면 삭제처리(대여)를 한다 총 인원 수와 lost의 배열 개수를 빼서 리턴한다. 코드 import Foundation func solution(_ n:Int, _ lost:[Int], _ reserve:[Int]) -> Int { //여벌을 가져왔지만 도난당할 수 있으니 그거에 대한 전처리 먼저한다. var losts =..
문제 코딩테스트 연습 - 프린터 문제 해결 프린터 풀에서 최대 중요도 수를 가져온다. 프린터 풀 앞에서 부터 최대 중요도 수를 체크한다. 같다면 풀에 값을 삭제하고 max를 갱신시킨다. 출력 카운트를 늘리고, 요청 문서 위치를 갱신한다. 다르다면 뒤로 보내는 작업을 한 후, 요청한 문서의 위치를 갱신시킨다. 마지막으로 요청한 문서가 출력되면 position은 -1이 되어 반복문을 빠져 나오고 값을 출력한다. 코드 func solution(_ priorities:[Int], _ location:Int) -> Int { var position = location var pool = priorities var max = pool.max() var count = 0 while !pool.isEmpty && po..
문제 코딩테스트 연습 - 기능개발 문제 해결 progresses 배열이 없어질 때 까지 반복을 한다. 첫 번째 element가 100 미만이면 진행도를 더해주고, count를 확인해 1이상이면 answer에 추가한다. 만약 100이상이라면 큐 처럼 가장 앞 원소를 삭제하고 count를 하나 늘린다. 위 작업을 반복하다 하나만 남았을 때 count만 올리고 나가지게 된다. 그러므로 바깥쪽에 count를 확인해 추가를 해 준다. 코드 func solution(_ progresses:[Int], _ speeds:[Int]) -> [Int] { var pro = progresses var spd = speeds var count = 0 var answer: [Int] = [] while (!pro.isEmpty..
문제 코딩테스트 연습 - H-Index 문제 해결 먼저 H-Index 산출법을 알아야 한다. h-index 산출 방법 발표 논문을 피인용횟수가 많은 순으로 정렬. 피인용횟수가 높은 순으로 번호를 부여. 논문의 번호(No)와 피인용횟수를 비교하여 피인용횟수가 논문의 번호(No)와 같거나 큰 번호(No)가 연구자의 h-index가 됩니다. 논문 인용 횟수를 내림차순으로 정렬한다. 배열의 index+1 값을 No.라고 생각하고 최초로 No.와 같거나 큰 인용횟수를 찾아 return한다. 코드 func solution(_ citations:[Int]) -> Int { var hIndex = citations.sorted(by: >) var answer = 0 for i in (0..).enumerated() {..