728x90
반응형
SMALL
반응형
요구사항 : String 을 반복문 돌렸을 때의 형태
풀이 과정
먼저 String 값을 받아서 Character로 바꾸고 다시 Int 로 바꿔서 합을 구해야한다.
방법은 다음과 같다.
let str = "12345"
var result = 0
// 1. map
str.map { print($0) }
// 2. forEach
str.forEach { print($0) }
// 3.for문
for i in str {
print(i)
}
이런방식으로 사용해본적이 없어서 String 을 반복문을 돌렸을 때의 형태를 확인해 볼 수 있는 기회였다.
추가로
런타임 에러 답변
- 이유는 문제에서 주어진 count 의 범위는 1 < N <= 100 이기 때문에 nums 가 Int 의 범위에 들어가지 않아서 였다.
let count = Int(readLine()!)!
var nums = Int(readLine()!)!
var result = 0
for _ in 0..<count {
result += nums % 10
nums /= 10
}
print(result)
컴파일 에러 답변
Xcode 에서는 잘 실행이 됐는데 답변에서는 컴파일 에러에 걸렸다.
String 을 split해서 subString 으로 만드는 과정에서 에러가 발생했다.
split을 하지 않고 그냥 map으로 돌리면 자동으로 Character로 나오는데...🥹
삽질 끝..!
문제
N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.
출력
입력으로 주어진 숫자 N개의 합을 출력한다.
예제 입력 1
1
1
예제 출력 1
1
예제 입력 2
5
54321
예제 출력 2
15
예제 입력 3
25
7000000000000000000000000
예제 출력 3
7
풀이
let count = Int(readLine()!)!
var numString = readLine()!
var result = 0
// 1. for문 이용
for i in numString {
result += Int(String(i))!
}
// 2. map 이용
numString.map {
result += Int(String($0))!
}
print(result)
728x90
반응형
LIST
'Algorithm' 카테고리의 다른 글
[Algorithm] Swift 백준 2675번 : joined() (0) | 2023.11.10 |
---|---|
[Algorithm] 백준 10809 알파벳 찾기/ Char to ASCII in Swift (0) | 2023.11.09 |
[Algorithm] Swift ASCII 출력하기 (0) | 2023.11.09 |
[Algorithm] 백준 1546번 평균 (0) | 2023.11.08 |
[Algorithm] 백준 10811번 바구니 뒤집기 (0) | 2023.11.06 |