프로그래머스 문제 링크 : 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])
var value = String(repeating: "*", count: a)
for i in 1...b {
print(value)
}
풀이 과정
- readLine()
EOF까지 혹은 현재 줄의 끝에 도달할 때까지의 표준입력을 읽어 문자열로 리턴한다
입력받은 값은 문자열 옵셔널로 감싸서 반환한다
https://developer.apple.com/documentation/swift/readline(strippingnewline:)/
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
입력될 값을 readLine으로 받아온 뒤, 차례대로 배열에 담는다.
그 배열을 또 각각 새로운 변수에 담아서 사용한다.
여기서 a 변수는 문제에서의 n, b 변수는 문제에서의 m 을 담당한다.
(n, m을 차례대로 입력하였을 것이기 때문에 배열에 n,m 순서대로 담겼을 것이다.)
우선 가로줄을 하나 만들어준다.
가로줄의 길이는 n 만큼이다.
var value = String(repeating: "*", count: a)
나는 init(repeating: count:)를 사용해서 별을 찍어주었다.
그 다음으로는 세로줄을 출력한다.
세로줄의 길이는 m 만큼이다.
1부터 m까지의 범위만큼 반복해서 출력해준다.
for i in 1...b {
print(value)
}
'알고리즘 > Programmers' 카테고리의 다른 글
[Swift_Programmes] 3진법 뒤집기 (0) | 2023.12.04 |
---|---|
[Swift_Programmes] 최대공약수와 최소공배수 ⭐ / 유클리드 호제법, 재귀함수 반복문 (0) | 2023.12.01 |
[Swift_Programmes] 행렬의 덧셈 (2) | 2023.11.30 |
[Swift_Programmes] 문자열 다루기 기본 (0) | 2023.11.28 |
[Swift_Programmes] 부족한 금액 계산하기 (0) | 2023.11.28 |