본문 바로가기

BOJ알고리즘

BOJ 2675 with Swift

반응형

BOJ 2675 with Swift

2675번: 문자열 반복

문제

  • 문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 T를 만든 후 출력하는 프로그램을 작성하시오.

  • 다시 설명하자면, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 T를 만들면 된다. S에는 QR Code "alphanumeric" 문자만 들어있다.

  • QR Code "alphanumeric" 문자는 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ$%*+-./: 이다.

입력값

  • 첫째 줄에 테스트 케이스의 개수 T(1 <= T <= 1,000)가 주어진다. 각 테스트 케이스는 반복 횟수 R(1 <= R <= 8), 문자열 S가 공백으로 구분되어 주어진다. S의 길이는 적어도 1이며, 20글자를 넘지 않는다.

출력값

  • 각 테스트 케이스에 대해 T를 출력한다.

예제입력

2
3 ABC
5 /HTP

예제출력

AAABBBCCC
/////HHHHHTTTTTPPPPP

코드

import Foundation

struct Q2675 {
    static func main(){
        if let caseCount = Int(readLine()!) {
            for _ in 0..<caseCount {
                if let str = readLine() {
                    let arr = str.components(separatedBy: " ")
                    var result = ""
                    for char in arr[1] {
                        result += addStr(Int(arr[0])!, String(char))
                    }
                    print(result)
                }
            }
        }
    }

    static func addStr(_ count:Int , _ str:String) -> String {
        var result = ""
        for _ in 0..<count {
            result += str
        }
        return result
    }
}

Q2675.main()
반응형

'BOJ알고리즘' 카테고리의 다른 글

BOJ 1316 with Swift  (0) 2018.09.11
BOJ 1157 with Swift  (0) 2018.09.10
BOJ 11654 with Swift  (0) 2018.09.02
BOJ 10809 with Swift  (0) 2018.09.02
BOJ 10039 with Swift  (0) 2018.09.02