Codility Java Triangle

업데이트:

문제

Link

코드

// you can also use imports, for example:
// import java.util.*;

// you can write to stdout for debugging purposes, e.g.
// System.out.println("this is a debug message");

class Solution {
  public int solution(int[] A) {
    if (A.length < 3) {
      return 0;
    }
    Arrays.sort(A);
    for (int idx = 0; idx < A.length - 2; idx++) {
      if ((long)A[idx] + (long)A[idx + 1] > A[idx + 2]) {
        return 1;
      }
    }
    return 0;
  }
}

설명

  1. 주어진 배열 A가 삼각형을 만들 수 없는 최소 개수인 3개 미만인 경우, 0을 주어진 문제의 결과로 반환한다.
  2. 주어진 배열 A를 Arrays 클래스를 활용하여 오름차순 정렬한다.
  3. 배열을 반복하여 주어진 아래의 조건에 부합하는지를 확인하여 부합하지 않은 경우, 0을 주어진 문제의 결과로 반환한다.
    • A[P] + A[Q] > A[R]
    • A[Q] + A[R] > A[P]
    • A[R] + A[P] > A[Q]
  4. 반복이 완료되면 주어진 조건을 만족하므로 1을 주어진 문제의 결과로 반환한다.

결과

Link

소스

Sample Code는 여기에서 확인 가능합니다.

댓글남기기