카테고리 없음

[프로그래머스 입문문제] Day 7 문자열, 조건문, 수학, 반복문

Devleoper_yh 2025. 1. 19. 18:43
반응형

1. 특정 문자 제거하기

문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.


제한사항

  • 1 ≤ my_string의 길이 ≤ 100
  • letter은 길이가 1인 영문자입니다.
  • my_string과 letter은 알파벳 대소문자로 이루어져 있습니다.
  • 대문자와 소문자를 구분합니다.

입출력 예

my_string letter result
"abcdef" "f" "abcde"
"BCBdbe" "B" "Cdbe"

입출력 예 설명

입출력 예 #1

  • "abcdef" 에서 "f"를 제거한 "abcde"를 return합니다.

입출력 예 #2

  • "BCBdbe" 에서 "B"를 모두 제거한 "Cdbe"를 return합니다.

제출 답안

import Foundation

func solution(_ my_string:String, _ letter:String) -> String {
    return my_string.replacingOccurrences(of: letter, with: "")
}

https://developer.apple.com/documentation/foundation/nsstring/1412937-replacingoccurrences

 

replacingOccurrences(of:with:) | Apple Developer Documentation

Returns a new string in which all occurrences of a target string in the receiver are replaced by another given string.

developer.apple.com

replacingOccurrences는 문자열에서 특정 문자열을 다른 문자열로 대체하는 메서드이다.


2. 각도기

각에서 0도 초과 90도 미만은 예각, 90도는 직각, 90도 초과 180도 미만은 둔각 180도는 평각으로 분류합니다. 각 angle이 매개변수로 주어질 때 예각일 때 1, 직각일 때 2, 둔각일 때 3, 평각일 때 4를 return하도록 solution 함수를 완성해주세요.

  • 예각 : 0 < angle < 90
  • 직각 : angle = 90
  • 둔각 : 90 < angle < 180
  • 평각 : angle = 180

제한사항

  • 0 < angle ≤ 180
  • angle은 정수입니다.

입출력 예

angle result
70 1
91 3
180 4

입출력 예 설명

입출력 예 #1

  • angle이 70이므로 예각입니다. 따라서 1을 return합니다.

입출력 예 #2

  • angle이 91이므로 둔각입니다. 따라서 3을 return합니다.

입출력 예 #2

  • angle이 180이므로 평각입니다. 따라서 4를 return합니다.

제출 답안

import Foundation

func solution(_ angle:Int) -> Int {
    if (angle == 180) {
        return 4
    } else if (angle == 90) {
        return 2
    } else if ( angle < 90) {
        return 1
    } else {
        return 3
    }
}

3. 양꼬치

머쓱이네 양꼬치 가게는 10인분을 먹으면 음료수 하나를 서비스로 줍니다. 양꼬치는 1인분에 12,000원, 음료수는 2,000원입니다. 정수 n k가 매개변수로 주어졌을 때, 양꼬치 n인분과 음료수 k개를 먹었다면 총얼마를 지불해야 하는지 return 하도록 solution 함수를 완성해보세요.


제한사항

  • 0 < n < 1,000
  • n / 10 ≤ k < 1,000
  • 서비스로 받은 음료수는 모두 마십니다.

입출력 예

n k result
10 3 124,000
64 6 768,000

입출력 예 설명

입출력 예 #1

  • 10인분을 시켜 서비스로 음료수를 하나 받아 총 10 * 12000 + 3 * 2000 - 1 * 2000 = 124,000원입니다.

입출력 예 #2

  • 64인분을 시켜 서비스로 음료수를 6개 받아 총 64 * 12000 + 6 * 2000 - 6 * 2000 =768,000원입니다.

제출 답안

import Foundation

func solution(_ n:Int, _ k:Int) -> Int {
	// 결과값 저장 변수 선언&초기화
    var result = 0
    
    // 음식값과 음료수값을 합친 총액 계산
    result = n * 12000 + k * 2000
    
    // 10인분을 시켰을 경우 받은 음료수 값을 총액에서 뺼셈
    return result - (n / 10) * 2000
}

4. 짝수의 합

정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.


제한사항

0 < n ≤ 1000


입출력 예

n result
10 30
4 6

입출력 예 설명

입출력 예 #1

  • n이 10이므로 2 + 4 + 6 + 8 + 10 = 30을 return 합니다.

입출력 예 #2

  • n이 4이므로 2 + 4 = 6을 return 합니다.

제출 답안

import Foundation

func solution(_ n:Int) -> Int {
	// 결과값을 저장할 변수
    var sum = 0
    
    // 1부터 n까지 반복
    for i in 1...n {
    
    	// 만약 짝수라면
        if (i % 2 == 0) {
        	// sum에 i를 추가한다.
            sum += i
        }
    }
    return sum
}

Day 7 완료

반응형