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

๋ณธ๋ฌธ ์ œ๋ชฉ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0 _ Swift] Day61 ๋ฐฐ์—ด์—์„œ ๋ฌธ์ž์—ด ๋Œ€์†Œ๋ฌธ์ž ๋ณ€ํ™˜ํ•˜๊ธฐ

โŒจ๏ธ Cording Test/Programmers

by AHN.Jihyeon 2024. 8. 1. 09:44

๋ณธ๋ฌธ


 

๐Ÿ“„ ๋ฌธ์ œ 1. ๋ฐฐ์—ด์—์„œ ๋ฌธ์ž์—ด ๋Œ€์†Œ๋ฌธ์ž ๋ณ€ํ™˜ํ•˜๊ธฐ 

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

 

 

 

 

 

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

import Foundation

func solution(_ strArr:[String]) -> [String] {
    //์ธ๋ฑ์Šค๊ฐ€ ์ง์ˆ˜์ด๋ฉด ์†Œ๋ฌธ์ž
    //์ธ๋ฑ์Šค๊ฐ€ ํ™€์ˆ˜์ด๋ฉด ๋Œ€๋ฌธ์ž
    var result:[String] = []
    
    for i in (0...strArr.count - 1) {
        if i % 2 == 0 {
            result.append(strArr[i].lowercased())
        } else {
            result.append(strArr[i].uppercased())
        }
    }
    return result

}

 

 

 

 

๐Ÿ‘€  ๋‹ค๋ฅธ ํ’€์ด ๋ถ„์„

func solution(_ strArr: [String]) -> [String] { 
	strArr.indices.map { ($0 % 2 == 0) ? strArr[$0].lowercased() : strArr[$0].uppercased()} 
}

๊ณ ์ฐธํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด๋ณด๊ณ ์ž ๋…ธ๋ ฅ ์ค‘์ด๋‚˜ ์•„์ง map์—์„œ ์กฐ๊ฑด์‹์„ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์‰ฝ์ง€๊ฐ€ ์•Š๋‹ค. 

 

indices 

Swift์˜ Collection ํ”„๋กœํ† ์ฝœ์—์„œ ์ œ๊ณตํ•˜๋Š” ์†์„ฑ์œผ๋กœ, ์ปฌ๋ ‰์…˜์˜ ๋ชจ๋“  ์œ ํšจํ•œ ์ธ๋ฑ์Šค๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์‹œํ€€์Šค์ด๋‹ค. 

์ปฌ๋ ‰์…˜์ด ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ชจ๋“  ์š”์†Œ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ธ๋ฑ์Šค๋“ค์˜ ๋ฒ”์œ„๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

๋ฐฐ์—ด์˜ ๊ฒฝ์šฐ, indices๋Š” 0์—์„œ ๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค๊นŒ์ง€์˜ ๋ฒ”์œ„๋ฅผ ํฌํ•จํ•œ๋‹ค. 

์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฐฐ์—ด์˜ ๊ธธ์ด๊ฐ€ 5๋ผ๋ฉด, indices๋Š” [0, 1, 2, 3, 4]์™€ ๊ฐ™์€ ๋ฒ”์œ„๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

let numbers = [1, 2, 3, 4]
let doubled = numbers.indices.map { index in numbers[index] * 2 }
print(doubled) // [2, 4, 6, 8]

 

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