반응형
BOJ 2675 with Swift
문제
문자열 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 |