[백준 / Swift] 9093 - 단어 뒤집기

박준혁 - Niro·2023년 1월 9일
0

백준

목록 보기
5/16
post-thumbnail

🔗 문제 링크


https://www.acmicpc.net/problem/9093

💡 문제


문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오.
단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.

⌨️ 입력


첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다.

단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 공백이 하나 있다.

🖨️ 출력


각 테스트 케이스에 대해서, 입력으로 주어진 문장의 단어를 모두 뒤집어 출력한다.

✅ 풀이


문자열을 띄어쓰기로 자른 뒤 각 문자열을 reversed() 로 뒤집고

다른 배열에 다시 집어 놓고 joined() 를 통해 각 원소를 합칠 때 띄어쓰기를 포함하도록 했습니다.

중요한 것은 reversed()를 사용 시 반환 값은 ReversedCollection<Array<Element>>() 이기 때문에 바로 사용하는 것이 아닌 for 문() 을 통하여 각 문자를 출력해주어야 합니다.


🖥️ 소스 코드



let n = Int(readLine()!)!

for _ in 0..<n {
    let input = readLine()!.split(separator: " ").map{String($0)}
    var arr = [String]()
    
    for i in input {
        var temp = ""
        for j in i.reversed() {
            temp += String(j)
        }
        
        arr.append(temp)
    }
    
    let result = arr.joined(separator: " ")
    print(result)
}
profile
📱iOS Developer, 🍎 Apple Developer Academy @ POSTECH 1st, 💻 DO SOPT 33th iOS Part

0개의 댓글