일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- level13
- 파일 시스템
- 재귀
- Stack
- ftz level13
- 큐
- windosws wbcs
- 정렬 알고리즘
- 암호수학
- 미로 탐색 알고리즘
- 파이썬
- pwnable.kr
- OSI
- Java
- 스택
- windosw 문자열
- 백준
- War Game
- PHP
- HTML
- 자료구조
- web
- ftz
- 시간복잡도
- System
- 두근두근 자료구조
- SWiFT
- c언어
- LoB
- C
Archives
- Today
- Total
나의 기록, 현진록
[Swift] 프로그래머스 코딩테스트 연습 > 스택/큐 > 기능개발 본문
Programming/Algorithm & Data Structure
[Swift] 프로그래머스 코딩테스트 연습 > 스택/큐 > 기능개발
guswlsdk 2022. 5. 11. 15:35반응형
https://programmers.co.kr/learn/courses/30/lessons/42586
문제풀이
1. 큐의 first의 요소가 100이 될 때까지 증가
2. 큐의 first가 100일 때 같이 배포될 수 있는 작업 갯수 세기
코드
import Foundation
print(solution([93, 30, 55],[1, 30, 5]))
print(solution([95, 90, 99, 99, 80, 99], [1, 1, 1, 1, 1, 1]))
func solution(_ progresses:[Int], _ speeds:[Int]) -> [Int] {
var progresses = progresses
var speeds = speeds
var result = [Int]()
while !progresses.isEmpty {
for i in 0..<progresses.count{
progresses[i] += speeds[i]
}
var count = 0
while !progresses.isEmpty && progresses[0] >= 100{
progresses.removeFirst()
speeds.removeFirst()
count += 1
}
if count != 0 {
result.append(count)
}
}
return result
}
반응형
'Programming > Algorithm & Data Structure' 카테고리의 다른 글
[Swift] 2020 KAKAO BLIND RECRUITMENT 문자열 압축 (0) | 2022.05.15 |
---|---|
[Swift] 프로그래머스 코딩테스트 연습 > 스택/큐 > 프린터 (0) | 2022.05.12 |
[Swift] 백준 10829 이진수 변환 / 재귀 /recursion (0) | 2021.07.22 |
[Swift] Data Structure recursion / hanoi / 자료구조 순환, 재귀 / 하노이 탑 (0) | 2021.07.08 |
[Swift] Data Structure Recursion / Fibonacci / 자료구조 재귀, 순환 / 피보나치 수열 (0) | 2021.07.07 |