본문 바로가기

iOS 앱 개발자 프로젝트/알고리즘 코드카타

[Algorithm] OX 문제

|  OX 문제

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

import Foundation

func solution(_ quiz:[String]) -> [String] {
    var yeon: [String] = []
    
    for q in quiz {
        var list = q.components(separatedBy: " ")
        if list[1] == "-" {
            if Int(list[0])! - Int(list[2])! == Int(list[4])! {
                yeon.append("O")
            } else {
                yeon.append("X")
            }
        } else {
            if Int(list[0])! + Int(list[2])! == Int(list[4])! {
                yeon.append("O")
        } else {
                yeon.append("X")
            }
        }   
    }
        return yeon
    }

 

 

        • 함수는 [String] 타입의 quiz 배열을 입력 받는다.
        • 각 문자열 q는 공백 문자로 구분하고, 이를 components(separatedBy:) 메서드를 사용하여 배열 list로 변환
        • 배열 list의 두 번째 요소가 -인 경우, 첫 번째 숫자에서 세 번째 숫자를 뺀 값이 네 번째 숫자와 일치하는지 확인
        • 배열 list의 두 번째 요소가 +인 경우, 첫 번째 숫자와 세 번째 숫자를 더한 값이 네 번째 숫자와 일치하는지 확인
        • 연산 결과가 일치하면 "O"를, 일치하지 않으면 "X"를 yeon 배열에 추가
        • 최종적으로 yeon 배열을 반환