프로그래머스 입문문제

[프로그래머스 입문문제] Day 6 문자열, 반복문, 출력, 배열, 조건문

Devleoper_yh 2025. 1. 16. 22:35
반응형

1. 문자열 뒤집기

문자열 my_string이 매개변수로 주어집니다. my_string을 거꾸로 뒤집은 문자열을 return하도록 solution 함수를 완성해주세요.


제한사항

  • 1 ≤ my_string의 길이 ≤ 1,000

입출력 예

my_string return
"jaron" "noraj"
"bread" "daerb"

입출력 예 설명

입출력 예 #1

  • my_string이 "jaron"이므로 거꾸로 뒤집은 "noraj"를 return합니다.

입출력 예 #2

  • my_string이 "bread"이므로 거꾸로 뒤집은 "daerb"를 return합니다.

제출 답안

import Foundation

func solution(_ my_string:String) -> String {
    return String(my_string.reversed())
}

https://developer.apple.com/documentation/swift/array/reversed()

 

reversed() | Apple Developer Documentation

Returns a view presenting the elements of the collection in reverse order.

developer.apple.com


2. 직각삼각형 출력하기

"*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요.


제한사항

  • 1 ≤ n ≤ 10

입출력 예

입력 #1

3

출력 #1

*
**
***

입출력 예 설명

입출력 예 #1

  • n이 3이므로 첫째 줄에 * 1개, 둘째 줄에 * 2개, 셋째 줄에 * 3개를 출력합니다.

제출 답안

import Foundation

if let input = readLine() let n = Int(input) {
    // 높이와 너비가 n인 직각 이등변 삼각형 출력
    for i in 1...n {
        print(String(repeating: "*", count: i))
    }
} else {
    print("x")
}

https://developer.apple.com/documentation/swift/string/init(repeating:count:)-23xjt

 

init(repeating:count:) | Apple Developer Documentation

Creates a new string representing the given string repeated the specified number of times.

developer.apple.com


3. 짝수 홀수 개수

정수가 담긴 리스트 num_list가 주어질 때, num_list의 원소 중 짝수와 홀수의 개수를 담은 배열을 return 하도록 solution 함수를 완성해보세요.


제한사항

  • 1 ≤ num_list의 길이 ≤ 100
  • 0 ≤ num_list의 원소 ≤ 1,000

입출력 예

num_list result
[1, 2, 3, 4, 5] [2, 3]
[1, 3, 5, 7] [0, 4]

입출력 예 설명

입출력 예 #1

  • [1, 2, 3, 4, 5]에는 짝수가 2, 4로 두 개, 홀수가 1, 3, 5로 세 개 있습니다.

입출력 예 #2

  • [1, 3, 5, 7]에는 짝수가 없고 홀수가 네 개 있습니다.

제출 답안

import Foundation

func solution(_ num_list:[Int]) -> [Int] {
    var result: [Int] = []
    let s1 = num_list.filter { $0 % 2 == 0}.count
    let s2 = num_list.filter { $0 % 2 == 1}.count
    result.append(s1)
    result.append(s2)

    return result
}

4. 문자 반복 출력하기

문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.


제한사항
  • 2 ≤ my_string 길이 ≤ 5
  • 2 ≤ n ≤ 10
  • "my_string"은 영어 대소문자로 이루어져 있습니다.

 

입출력 예
 
my_string n result
"hello" 3 "hhheeellllllooo"

입출력 예 설명

입출력 예 #1

  • "hello"의 각 문자를 세 번씩 반복한 "hhheeellllllooo"를 return 합니다.

제출 답안

import Foundation

func solution(_ my_string: String, _ n: Int) -> String {
    // 문자열 my_string의 각 문자를 map을 사용하여 변환
    // map 내부에서 각 문자를 String(repeating:count:)로 n번 반복
    return my_string.map { 
        String(repeating: $0, count: n) // $0은 현재 순회 중인 문자
    }.joined() // map 결과로 생긴 문자열 배열을 하나의 문자열로 결합
}

https://developer.apple.com/documentation/swift/array/joined(separator:)-7uber

 

joined(separator:) | Apple Developer Documentation

Returns the concatenated elements of this sequence of sequences, inserting the given separator between each element.

developer.apple.com


Day 6

반응형