728x90
반응형
백준알고리즘
- Bronze 4 -
#14264. 정육각형과 삼각형 by JAVA and node.js
문제
출처: https://www.acmicpc.net/problem/14264
접근 방법
정육각형 한 각은 120˚이고, S의 최대값은 정삼각형이 그려졌을 때이다.
한 변의 길이가 L로 주어지고, 한 꼭짓점에서 대각선으로 수선의 발을 내리면 한 각은 60˚, 다른 한 각은 자연스럽게 30˚가 된다. (∵ 이등변 삼각형)
30˚ 60˚ 90˚는 삼각비가 존재하는 삼각형으로, 변의 길이가 1 : √3 : 2 의 비율을 가진다.
따라서 가장 짧은 변(여기서는 높이 역할)의 길이는 (1/2)L이고, 가장 긴 변(여기서는 가로의 길이의 절반)은 (√3/2)L이 되므로 S는 (√3/4)*L*L 이 된다.
풀이
▶ JAVA
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 실수형이 나와야 하므로 double로 받는다.
double l = scan.nextDouble();
scan.close();
// Math.sqrt(3) 때문에 출력은 실수로 나오지만,,
System.out.println(l * l * Math.sqrt(3) / 4);
}
}
▶ node.js
var fs = require('fs');
var l = fs.readFileSync('/dev/stdin').toString().trim();
// l * l 대신 Math.pow를 사용해보았다.
console.log(Math.pow(l,2) * Math.sqrt(3) / 4);
결과
End.
heisely's 괴발개발 개발일지
728x90
반응형
'알고리즘 > 백준알고리즘' 카테고리의 다른 글
[백준알고리즘] #14623. 감정이입 (by JAVA and node.js) (0) | 2022.04.29 |
---|---|
[백준알고리즘] #14470. 전자레인지 (by JAVA and node.js) (0) | 2022.04.28 |
[백준알고리즘] #14173. Square Pasture (by JAVA and node.js) (0) | 2022.04.28 |
[백준알고리즘] #14065. Gorivo (by JAVA and node.js) (0) | 2022.04.28 |
[백준알고리즘] #14038. Tournament Selection (by JAVA and node.js) (0) | 2022.04.27 |