Where who wants to meet someone
직사각형 별찍기 본문
728x90
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12969
내 답안 / 다른 사람들의 답안
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
for i in 1...b {
print(String(repeating: "*", count: a))
}
- b만큼 a길이의 *String을 반복하는 방법을 사용했다.
// 풀이 1
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
for _ in 0..<b {
print(Array(repeating: "*", count: a).joined())
}
// 풀이 2
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
for _ in 1...b {
for _ in 1...a {
print("*", terminator: "")
}
print("")
}
- String으로 했을 때 시간이 오래 걸리는 것을 볼 수 있었는데(40ms 이상), Array로 사용하면 평균 10ms 아래로 나오는 것을 알 수 있었다.
점수: +1
'프로그래머스 알고리즘 문제 기록 > Lv. 1' 카테고리의 다른 글
이상한 문자 만들기 (0) | 2024.05.25 |
---|---|
3진법 뒤집기 (0) | 2024.05.25 |
행렬의 덧셈 (0) | 2024.05.19 |
문자열 다루기 기본 (0) | 2024.05.16 |
부족한 금액 계산하기 (0) | 2024.05.16 |