[문제]
https://leetcode.com/problems/triangle-judgement/description/
[풀이]
1. 가장 큰 변의 길이와 전체 변의 길이를 다 더한다음 2로 나눈 값을 비교한다.
2. 그때 가장 큰 변의 길이가 더 작다면 'No' 를 아니라면 'Yes'를 나타내는 열을 생성해준다.
가장 큰 변의 길이보다 나머지 두 변의 길이의 합이 더 크면 된다. 가장 큰 변의 길이는 구할 수 있겠는데 나머지 두 변을 어떻게 가져오지라는 고민... 그러다가 다 더한다음에 2로 나눠버리면 그 숫자는 결국 (나머지 변의 길이 합) 과 (가장 큰 변의 길이)로 나뉘어질 수 있겠구나 생각이 나서 구현. 즉, 다 더해서 2로 나눈 값이 가장 큰 변의 길이보다 크면 삼각형 그리기 가능.
Pandas
import pandas as pd
def triangle_judgement(triangle: pd.DataFrame) -> pd.DataFrame:
triangle['triangle'] = triangle.apply(lambda x: "Yes" if (x['x'] + x['y'] + x['z'])/2 > max(x['x'], x['y'], x['z']) else 'No', axis=1)
return triangle
SQL
SELECT
x, y, z
, IF((x+y+z)/2 > GREATEST(x, y, z), 'Yes', 'No') AS triangle
FROM Triangle
'코드카타 > Pandas' 카테고리의 다른 글
106. The Number of Employees Which Report to Each Employee (0) | 2025.01.14 |
---|---|
107. Primary Department for Each Employee (0) | 2025.01.13 |
105. Customers Who Bought All Products (0) | 2025.01.12 |
104. Biggest Single Number (0) | 2025.01.11 |
103. Find Followers Count (0) | 2025.01.08 |