

<코드>
//
// main.swift
// BOJ
//
// Created by leehwajin on 2022/12/26.
//
import Foundation
//2839 설탕배달
var sugar = Int(readLine()!)!
var sugar1 = sugar
var sugar2 = 0
var maxfiv = 0
var maxthr = 0
var arr:Array<Int> = []
while(sugar>=5){
sugar -= 5
maxfiv += 1
}
for i in 0...maxfiv{
arr.insert(i, at: i)
}
arr.reverse()
if sugar == 0{
print(maxfiv)
}
else{
if maxfiv == 0{
sugar -= 3
if sugar == 0{
print("1")
}
else{
print("-1")
}
}
else{
Outter: for i in arr{
sugar2 = sugar1
sugar2 -= 5*i
Inner: while(sugar2 >= 3){
sugar2 -= 3
maxthr += 1
if sugar2 == 0 {
let a = i+maxthr
print(a)
break Outter
}
if (i == 0)&&(sugar2<3){
print("-1")
break
}
}
maxthr = 0
}
}
}
코드가 길어진거같은데,, 풀었으니 만족
maxthr을 초기화안해서 9를 넣었더니 자꾸 4가 나왔는데
왜 4가나오는지 이해가 안되서 헤맸다
결국 print넣으면서 확인한 끝에 찾아내고 초기화 시키니까 정상적으로 작동 !
'백준' 카테고리의 다른 글
| 스위프트 백준 2292 벌집 (0) | 2022.12.29 |
|---|---|
| [SWIFT]백준1920 수찾기/이진탐색/시간복잡도 (1) | 2022.12.29 |
| [SWIFT]백준9012 괄호 (0) | 2022.12.29 |
| [SWIFT]백준10828 스택 (0) | 2022.12.28 |
| [SWIFT] 백준2869 달팽이는 올라가고싶다 (5) | 2022.12.23 |