Where who wants to meet someone

백준 Swift [10101] 삼각형 외우기 본문

백준 알고리즘 문제 기록/기하: 직사각형과 삼각형

백준 Swift [10101] 삼각형 외우기

Lust3r 2023. 7. 2. 17:27
728x90

난이도

브론즈 IV

 

문제

https://www.acmicpc.net/problem/10101

 

10101번: 삼각형 외우기

문제의 설명에 따라 Equilateral, Isosceles, Scalene, Error 중 하나를 출력한다.

www.acmicpc.net

 

내 답안

var a: [Int] = []

for _ in 1...3 {
    let input = Int(readLine()!)!

    a.append(input)
}

if a.filter({ $0 == 60 }).count == 3 {
    print("Equilateral")
} else if a.reduce(0, +) == 180 && Set(a).count == 2 {
    print("Isosceles")
} else if a.reduce(0, +) == 180 && Set(a).count == 3 {
    print("Scalene")
} else {
    print("Error")
}

- Switch문으로 해보고 싶었으나..아직 공부가 부족한 탓인지 오류가 나서 if문으로 분기하였다.

- filter로 60인 값의 수를 세는 방법, 다 더한 값과 중복을 제거했을 때의 개수를 확인하는 방법을 사용했다.