import Foundation
func solution(_ price:Int, _ money:Int, _ count:Int) -> Int64{
var val = (1...count).map{ $0 * price }.reduce(0, +)
return Int64(val > money ? val - money : 0)
}
ํ๋์ Swift ๋ฌธ๋ฒ ๊ฐ์์ ๊ณผ์ ๊ตฌํ์๋ง ์ ๊ฒฝ์ฐ๋ค๋ณด๋, ์ค๋๋ง์ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ๋ฅผ ์ ํ์๋ค.
์ฌ๋ฌ ๊ฐ์์ ๊ณผ์ ์ค์ต์ ๋๋ถ์, ํด๋ก์ ์ ๊ณ ์ฐจํจ์์ ์ฌ์ฉ์ด ๋์ฑ ํธํ๊ฒ ๋๊ปด์ง๋ค.
๋ฌธ์ ์ค๋ช
์ ๋ณธ ์๊ฐ, ๋ฐ๋ก map
์ผ๋ก ํ์์ ๋ฐ๋ฅธ ๋น์ฉ์ ์ถ๋ก ํ๊ณ ์ดํ reduce
๋ฅผ ํ์ฉํ์ฌ ํด๋น ๊ฐ์ ๋ชจ๋ ๋ํ์ฌ ์ ์ ํํ๋ก ๋ฐํํ๋ฉด ๋๊ฒ ๋ค๋ ์๊ฐ์ด ๋ค์๋ค!
ํ์คํ ๊ฐ์๋ฅผ ๋ฃ๊ณ ๋ช ๋ฒ ์ค์ตํด๋ณด๋, ์กฐ๊ธ์ฉ ์ฑ์ฅํ๋๊ฑธ ๋๋ ์ ์๋ค!
ํด๋น ๋ฌธ์ ์์๋ ๋ฐํ๊ฐ์ Int64
ํ์
์ผ๋ก ์ค์ ๋์ด ์๊ธฐ์ solution()
ํจ์์ ๋ฐํ๊ฐ์ผ๋ก ๋ฌธ์ ์กฐ๊ฑด์ ์๋ง๋ ๋ต์ ํด๋น ํ์
์ผ๋ก ๋ณํํ์ฌ ๋ฐํํด์ฃผ์๋ค.
์ด์ ๊น์ง ์๊ฐํ๋ ๋ฌธ๋ฒ ์ฃผ์ฐจ๊ฐ ๋ง๋ฌด๋ฆฌ๋๊ณ , ์ด๋ฒ ์ฃผ๋ถํฐ๋ iOS ์ฑ ๊ฐ๋ฐ ์ ๋ฌธ ์ฃผ์ฐจ๊ฐ ์์๋์๋ค!
๊ฐ์์์ Xcode๋ฅผ ํ์ฉํ์ฌ ์ฑ์ ๊ตฌํํ๋ ๊ณผ์ ๊ณผ ๋ฐฉ๋ฒ์ ๋ํด ๋ฐฐ์ธ ์ ์์๋ค.
์์ธํ ๋ด์ฉ์ ๋ค์์ ์ ๋ฆฌํด๋ณด๊ฒ ๋ค!
๊ฐ์๋ฅผ ๋ค ๋ฃ๊ณ ๋ฐฐ์ด ๋ด์ฉ์ ์ข ํฉํ์ฌ ๊ฐ๋จํ ์นด์ด๋ ์ฑ ๋ง๋ค๊ธฐ๋ผ๋ ์์ ๊ณผ์ ๊ฐ ์์๋ค.
๋ ์ด์์ ์๊ตฌ์ฌํญ
๋ก์ง ์๊ตฌ์ฌํญ
ํด๋น ๊ณผ์ ๋ ๊ธฐ๋ฅ ๊ตฌํ์ ์ด์ ์ ๋๊ณ ์ค๊ณํด๋ณด์๋ค!
์ฐ์ ๊ณผ์ ๋ฅผ ๊ตฌํํ๊ธฐ ์ํ ์์ ์ค ๋ ์ด์์ ์๊ตฌ์ฌํญ์ ๋จผ์ ์ถฉ์กฑ์์ผ์ฃผ์๋ค.
Swift Storyboard์ Drag&Drop
์ผ๋ก ์ฌ์ฉํ Label
๊ณผ Button
์ ์ถ๊ฐํด์ฃผ์๊ณ , AutoLayout์ ํ์ฉํ์ฌ ๊ฐ๊ฐ ์๊ตฌ์ฌํญ์ ๋ง์ถฐ ๋ฐฐ์นํ์๋ค.
// ViewController.swift
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var CounterLabel: UILabel!
private var countData: Int = 0
override func viewDidLoad() {
super.viewDidLoad()
resetDisplay()
}
@IBAction func counterAdd(_ sender: Any) {
self.countData += 1
resetDisplay()
}
@IBAction func counterSub(_ sender: Any) {
self.countData -= 1
resetDisplay()
}
func resetDisplay() {
self.CounterLabel.text = "\(self.countData)"
}
}
๋ค์์ผ๋ก ๊ฐ ์์๋ฅผ ViewController์์ ๊ธฐ๋ฅ์ ๋ง๋ค ์ ์๋๋ก, Drag&Drop
์ผ๋ก IBOutlet
๊ณผ IBAction
์ ๊ตฌํํ์๋ค.
์ฝ๋๋ฅผ ์ดํด๋ณด๋ฉด ์ฆ๊ฐ, ๊ฐ์ ๋ฒํผ์ ๋๋ฅด๋ฉด countData
์ ๊ฐ์ด 1 ์ฉ ์ถ๊ฐ๋๊ฑฐ๋ ๋นผ์ง๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
๊ทธ๋ฆฌ๊ณ ํด๋น ๊ฐ์ CounterLabel
์ ๋ฌธ์๋ณด๊ฐ๋ฒ์ ํตํด ์ ์ฅํ์ฌ ํจ์ํ์์ผฐ๋ค.
๋ฒํผ์ ๋๋ฌ ๊ฐ์ด ์์ ๋๋ฉด, ๋์์ CounterLabel๋ ์ ์ฅํ๋๋ก ๋ง๋ค์ด Count๋ฅผ ์ฆ๊ฐ ๋๋ ๊ฐ์์์ผฐ๋ค.
๋ง์ ๊ฐ์๋ฅผ ๋ฃ๊ณ ์์ ๋๋ ๊ฐ๋จํด๋ณด์์ง๋ง, ์ค์ ๋ก ๋ง์ฐ์ค์ ํค๋ณด๋๋ฅผ ์์ง์ฌ ๋ฌด์ธ๊ฐ ๋ง๋ค๋ ค๊ณ ์ฝ์ง ์์ ๋นํฉํ๋ค...๐ฅฒ
๊ทธ๋๋ ๊ฐ๋จํ ๊ธฐ๋ฅ๋ถํฐ ์กฐ๊ธ์ฉ ๊ตฌํํด๋ณด๋ ํฅ๋ฏธ๊ฐ ๋์ฑ ๋ถ๋๊ฑฐ ๊ฐ๋ค!!