Swift Data Structure And Algorithm/Basic Number Theory

PROSJEK

youngjaeLee1026 2022. 3. 8. 21:39

1. ๋ฌธ์ œ

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-03-08 21 31 38

2. ์ž…์ถœ๋ ฅ

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-03-08 21 32 30

3. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-03-08 21 34 04

4. ๋ฌธ์ œ ์„ค๊ณ„

  1. ์ง์ ‘ ์†์œผ๋กœ ๊ณ„์‚ฐ์„ ํ•ด๋ณด๋ฉด A[1] = B[1] ์ด๊ณ , A[i] = B[i] * i - (A[1] + ... + A[i - 1]) (๋‹จ, i >= 2) ์ž„์„ ์•Œ ์ˆ˜ ์žˆ์Œ

5. ์ „์ฒด ์ฝ”๋“œ

//
//  main.swift
//  PROSJEK
//
//  Created by ์ด์˜์žฌ on 2022/03/08.
//MARK: - PROSJEK

//MARK: - Framework
import Foundation

//MARK: - Function
func solution() -> Void {
    //MARK: - Input
    guard let N: Int = Int(readLine() ?? "0") else { return }
    guard let input = readLine()?.components(separatedBy: " ") else { return }
    let B: [Int] = input.map { Int($0) ?? 0 }
    var A: [Int] = Array(repeating: 0, count: N + 10)
    var answer: String = ""
    
    //MARK: - Process
    A[0] = B[0]
    for i in 1..<N {
        A[i] = B[i] * (i + 1)
        
        for j in 0...(i - 1) {
            A[i] -= A[j]
        }
    }
    
    for i in 0..<(N - 1) {
        answer += "\(A[i]) "
    }
    answer += "\(A[N - 1])"
    
    //MARK: - Output
    print(answer)
}
solution()

 

์ „์ฒด์ฝ”๋“œ๋Š” ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

'Swift Data Structure And Algorithm > Basic Number Theory' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

fractionsum  (0) 2022.03.08
lcm  (0) 2022.03.08
fibonacci  (0) 2022.03.08
nextnum  (0) 2022.03.08
GCD LCM  (0) 2022.01.29