[swift] 기능개발

ohtt-iOS·2020년 12월 14일
0

프로그래머스

목록 보기
3/9
post-thumbnail

코드는 Swift로 작성하였습니다.
제가 직접 작성한 코드라 최적의 코드가 아닐 수 있음을 알려드립니다. 🐹


문제는 저작권 관련 문제가 있을 수 있어서 적어두지 않았습니다.



✍🏻 생각정리

-> index값을 통해 어디까지 작업이 완료되었는지 표시해두기.

  1. speed값을 더해주고
  2. 아직 완료되지 않은 값 중 첫번째 값이 100이 넘어가는지 체크
  3. 넘어간다면 그 다음것들도 100을 넘어가는게 있는지 체크하며 countNum값을 키워준다. index도 같이 키워줘야함.
  4. 100이 안되는 숫자가 나오면 index가 그 곳으로 설정되며,
    countNum값을 return될 배열에 넣어준다. 그리고 다시 1번으로 돌아감.


👩🏻‍💻 코드

import Foundation

func solution(_ progresses:[Int], _ speeds:[Int]) -> [Int] {
    var progress = progresses
    var index = 0
    var count = [Int]()
    var countNum = 0
    
    while true {
        for i in index..<progresses.count {
            progress[i] += speeds[i]
        }
        if progress[index] >= 100 {
           
            while progress[index] >= 100 {
                if (index == progress.count-1) && (progress[index] >= 100) {
                    countNum += 1
                    count.append(countNum)
                    return count
                }
                countNum += 1
                index += 1
            }
            count.append(countNum)
            print(count)
            countNum = 0
        }
    }
    return count
    
}
profile
오뜨 삽질 🔨 블로그

0개의 댓글