์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0 _ Swift] Day13 ์ง์ˆ˜ ํ™€์ˆ˜ ๊ฐœ์ˆ˜(feat. Array Literal)

โŒจ๏ธ Cording Test/Programmers

by AHN.Jihyeon 2024. 5. 9. 00:39

๋ณธ๋ฌธ


 

๐Ÿ“„ ๋ฌธ์ œ 1. ์ง์ˆ˜ ํ™€์ˆ˜ ๊ฐœ์ˆ˜

๐Ÿ”— ๋ฌธ์ œ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/120824

 

 

 

 

โœ…  ์ œ์ถœ ์ฝ”๋“œ

import Foundation

func solution(_ num_list:[Int]) -> [Int] {
	//1. Filter ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ
    return [num_list.filter{$0 % 2 == 0}.count, num_list.filter{$0 % 2 != 0}.count]

	//2.๋ฐ˜๋ณต๋ฌธ for๊ตฌ๋ฌธ ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ
        var num1 : Int = 0
    var num2 : Int = 0
    var array : [Int] = []  
    
    for i in num_list {        
        if i % 2 == 0 {
            num1 += 1        
        } else {
            num2 += 1
        }       
    }
    array.append(num1)
    array.append(num2)   
    return array
}

 

filter ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ํ’€๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ์ฒ˜์Œ์— ๊ธฐ์–ต์ด ์ž˜ ๋‚˜์ง€ ์•Š์•„์„œ

for ๊ตฌ๋ฌธ์„ ํ™œ์šฉํ•ด์„œ ๋ฌธ์ œ๋ฅผ ํ’€์—ˆ๋‹ค. 

 

filter ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋–„ ๊ณ ๋ฏผ๋˜์—ˆ๋˜ ๋ถ€๋ถ„์€

๋ฐฐ์—ด์— ์ง์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ํ™€์ˆ˜์˜ ๊ฐœ์ˆ˜๋ฅผ ๋‹ด์•„ return ํ•ด์•ผํ•˜๋Š”๋ฐ

์—ฌ๊ธฐ์„œ ๋ณ„๋„์˜ ๋ฐฐ์—ด์„ ์„ ์–ธํ•ด์•ผํ•˜๋Š”์ง€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์ด ์žˆ์—ˆ๋‹ค. 

 

๊ฒฐ๋ก ์€,

๐ŸŒŸ return ์—์„œ ๋ณ„๋„์˜ ๋ฐฐ์—ด ๋ณ€์ˆ˜๋ช…๊ณผ ์„ ์–ธ ์—†์ด [ ] ๋กœ ๋ฐฐ์—ด์„ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค!!

 ์ด์œ ๋Š”,

๋ฐ”๋กœ ๋ฐฐ์—ด ๋ฆฌํ„ฐ๋Ÿด Array Literal ๋•Œ๋ฌธ์ด๋‹ค!

[ ] ์•ˆ์— ์‰ผํ‘œ๋กœ ์š”์†Œ๋“ค์„ ๋„ฃ์–ด ์ƒˆ๋กœ์šด ๋ฐฐ์—ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. 

Swift์—์„œ ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•˜๊ณ  ๋ฐ˜ํ™œํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋ผ๊ณ  ํ•œ๋‹ค. 

 

์˜ˆ๋ฅผ๋“ค์ž๋ฉด,

[1, 2, 3] ์ด๋Ÿฐ์‹์œผ๋กœ ๋ฐ”๋กœ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 

๋‹จ, ํ•ด๋‹น ์ฝ”๋“œ ๋ธ”๋ก ๋‚ด์—์„œ๋งŒ ์œ ํšจํ•˜๊ณ  ํ•ด๋‹น ์ฝ”๋“œ ๋ธ”๋ก์„ 

๋ฒ—์–ด๋‚˜๊ฒŒ ๋˜๋ฉด ํ•ด๋‹น ๋ฐฐ์—ด์— ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋‹ค. ์ด๋•Œ๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•ด์•ผ ํ•œ๋‹ค. 

 

๐Ÿ“Œ ํด๋กœ์ €์—์„œ $0์˜ ์˜๋ฏธ

 

 

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ