반응형
1. 두 정수 a, b가 주어질 때 다음과 같은 형태의 계산식을 출력하는 코드를 작성해 보세요.
a + b = c
제한사항
- 1 ≤ a, b ≤ 100
입출력 예
입력 #1
4 5
출력 #1
4 + 5 = 9
제출 답안
import Foundation
let n = readLine()!.components(separatedBy: [" "]).map { Int($0)! }
let (a, b) = (n[0], n[1])
let result: Int = a + b
print("\(a) + \(b) = \(result)")
2. 두 개의 문자열 str1, str2가 공백으로 구분되어 입력으로 주어집니다. 입출력 예와 같이 str1과 str2을 이어서 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤ str1, str2의 길이 ≤ 10
입출력 예
입력 #1
apple pen
출력 #1
applepen
입력 #2
Hello World!
출력 #2
HelloWorld!
제출 답안
import Foundation
// 입력을 받아 공백으로 나누고 배열로 저장
let inp = readLine()!.components(separatedBy: [" "]).map { $0 }
// 첫 번째와 두 번째 요소를 변수에 할당
let (s1, s2) = (inp[0], inp[1])
// 문자 붙여 출력
print(s1 + s2)
3. 문자열 str이 주어집니다.
문자열을 시계방향으로 90도 돌려서 아래 입출력 예와 같이 출력하는 코드를 작성해 보세요.
제한사항
1 ≤ str의 길이 ≤ 10
입출력 예
입력 #1
abcde
출력 #1
a
b
c
d
e
제출 답안
import Foundation
let s1 = readLine()!
// s1의 문자를 한 줄씩 출력
for char in s1 {
print(char)
}
4. 자연수 n이 입력으로 주어졌을 때 만약 n이 짝수이면 "n is even"을, 홀수이면 "n is odd"를 출력하는 코드를 작성해 보세요.
제한사항
- 1 ≤ n ≤ 1,000
입출력 예
입력 #1
100
출력 #1
100 is even
입력 #2
1
출력 #2
1 is odd
제출 답안
import Foundation
let a = Int(readLine()!)!
if (a % 2 == 0) {
print("\(a) is even")
} else {
print("\(a) is odd")
}
5. 문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
- my_string와 overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
- 1 ≤ overwrite_string의 길이 ≤ my_string의 길이 ≤ 1,000
- 0 ≤ s ≤ my_string의 길이 - overwrite_string의 길이
입출력 예
my_string | overwrite_string | s | result |
"He11oWor1d" | "lloWorl" | 2 | "HelloWorld" |
"Program29b8UYP" | "merS123" | 7 | "ProgrammerS123" |
입출력 예 설명
입출력 예 #1
- 예제 1번의 my_string에서 인덱스 2부터 overwrite_string의 길이만큼에 해당하는 부분은 "11oWor1"이고 이를 "lloWorl"로 바꾼 "HelloWorld"를 return 합니다.
입출력 예 #2
- 예제 2번의 my_string에서 인덱스 7부터 overwrite_string의 길이만큼에 해당하는 부분은 "29b8UYP"이고 이를 "merS123"로 바꾼 "ProgrammerS123"를 return 합니다.
제출 답안
import Foundation
func solution(_ my_string:String, _ overwrite_string:String, _ s:Int) -> String {
// 문자열을 수정할 수 있도록 배열로 변환
var result = Array(my_string)
// 덮어쓰기할 문자열의 길이만큼 반복하며 수정
for (i, char) in overwrite_string.enumerated() {
result[s + i] = char
}
// 배열을 다시 문자열로 변환하여 반환
return String(result)
}
https://developer.apple.com/documentation/swift/array/enumerated()
주요 포인트
1. 문자열을 수정 가능하게 배열로 변환
2. enumerated()를 활용한 인덱스와 값 접근
3. 배열을 다시 문자열로 변환
반응형
'프로그래머스 기초문제' 카테고리의 다른 글
[프로그래머스 기초문제] Day 5 (0) | 2025.01.09 |
---|---|
[프로그래머스 기초문제] Day 4 (0) | 2025.01.07 |
[프로그래머스 기초문제] Day 3 (0) | 2025.01.06 |
[프로그래머스 기초문제] Day 1 (0) | 2025.01.02 |