python 이상한 문자 만들기

quokka·2021년 3월 31일
0

코딩테스트

목록 보기
21/63

str에서 list형으로 list형에서 str형으로 왔다갔다 하는걸 잘 해줘야되는거같다
list(str)를 해주면 str의 모든 문자를 list로 바꿀수 있고 " ".join(list)를 해주면 list의 원소를 " "(공백)을 포함하여 str형로 합칠수 있다.

Python

def solution(s):
    answer = ''
    array = list(s.split(" "))
    array2 = []
    for st in array:
        strArray=list(st)
        for i in range(len(strArray)):
            if (i+1)%2==0:
                strArray[i]=strArray[i].lower()
            else:
                strArray[i]=strArray[i].upper()
        s = "".join(strArray)
        array2.append(s)
    answer = " ".join(array2)
    return answer

Swift

func solution(_ s:String) -> String {
    var answer = ""
    let arr = s.components(separatedBy: " ")
    var array = [String]()
    for str in arr {
        var newString = ""
        for (i,e) in str.enumerated() {
            if (i+1)%2==0 {  //짝수
                newString.append(e.lowercased())
            } else {
                newString.append(e.uppercased())
            }
        }
        array.append(newString)
        
    }
    answer = array.joined(separator: " ")
    return answer
}

//프로그래머스 다른분 풀이 참고
func solution(_ s:String) -> String {
    let a = s.components(separatedBy: " ")
        .map{ $0.enumerated()
            .map{ ($0.offset+1)%2==0 ? $0.element.lowercased() : $0.element.uppercased() } }
        .map{ $0.map{ $0}.joined() }
        .joined(separator: " ")
    return a
}
profile
iOS를 공부하는 개발자입니다~ㅎㅎ

0개의 댓글

관련 채용 정보