
내가 생각했을때 문제에서 원하는부분
선분 세 개로 삼각형을 만들기 위해서는 다음과 같은 조건을 만족해야 합니다.
가장 긴 변의 길이는 다른 두 변의 길이의 합보다 작아야 합니다.
삼각형의 두 변의 길이가 담긴 배열 sides이 매개변수로 주어집니다.
나머지 한 변이 될 수 있는 정수의 개수를 return하도록 solution 함수를 완성해주세요.
내가 이 문제를 보고 생각해본 부분
자바 프로그램의 기본 단위인 클래스를 정의하다.
정수형 배열 sides를 매개변수로 받아 정수형 결과값을 반환하다.
자바 내장 함수인 Math.min을 사용하여 주어진 두 변 중 더 작은 값을 찾아 변수 min에 저장하다.
삼각형이 완성될 수 있는 경우의 수를 구하는 수학적 공식인 (작은 값 × 2) - 1을 적용하여 계산하다.
계산된 최종 결과값을 호출부로 반환하다.
코드로 구현
class Solution {
public int solution(int[] sides) {
int min = Math.min(sides[0], sides[1]);
int answer = min * 2 - 1;
return answer;
}
}
프로그래머스 코드
package programmers.programmers2;
// 프로그래머스 삼각형의 완성조건 (2)
public class Main156 {
public static int solution(int[] sides) {
int min = Math.min(sides[0], sides[1]);
int answer = min * 2 - 1;
return answer;
}
public static void main(String[] args) {
// 인텔리제이에서 정상 동작하는지 테스트해볼 수 있는 코드입니다.
int[] test1 = {1, 2};
int[] test2 = {3, 6};
int[] test3 = {11, 7};
System.out.println(solution(test1)); // 예상: 1
System.out.println(solution(test2)); // 예상: 5
System.out.println(solution(test3)); // 예상: 13
}
}
위에 있는 코드를 변경한 코드
코드와 설명이 부족할수 있습니다. 코드를 보시고 문제가 있거나 코드 개선이 필요한 부분이 있다면 댓글로 말해주시면 감사한 마음으로 참고해 코드를 수정 하겠습니다.