백준 온라인 저지 / 14264번 정육각형과 삼각형
https://www.acmicpc.net/problem/14264
- 사용언어 : C (C99)
- 알고리즘 : 수학, 기하학
C 코드
1. 문제 정리
총 1개의 입력을 받은 후 계산해서 출력하는 문제이다.
삼각비 수학문제인데.
육각형 내에서 삼각형을(겹치지 않는 대각선) 만든 후
작은 삼각형의 면적을 출력하면 된다.
√3a x (a/2) / 2
라는 공식이 나오게 되는데 다음을 계산하면
√3/4 * a^2라는 값이 나온다.
루트 계산을 위해서 sqrt 함수를 가져와 문제를 해결 해보았다.
2. sqrt?
sqrt란 말 그대로 그냥 루트이다.
c에서는 math.h 헤더를 포함해야 하고 c++에선 cmath인가? 포함 해야하는 걸로 기억한다.
문제에서 그냥 sqrt를 사용하여 단방에 해결했다.
double value = a * a * sqrt(3)/4;
요런 식으로 계산하여서 풀었고 출력은 절대/상대 오차는 10-9까지 허용한다 라고 했으니
%.10lf를 사용하여 해결 해주었다.
3. 완성 코드
#include <stdio.h>
#include <math.h>
int main()
{
double a;
scanf("%lf", &a);
double value = a * a * sqrt(3)/4;
printf("%.10lf", value);
}
'백준 알고리즘 > Lang-C | C++' 카테고리의 다른 글
[백준/C] 14173번 Square Pasture (0) | 2021.09.14 |
---|---|
[백준/C] 14924번 폰 노이만과 파리 (0) | 2021.09.14 |
[백준/C] 10797번 10부제 (0) | 2021.08.26 |
[백준/C] 10768번 특별한 날 (1) | 2021.08.25 |
[백준/C] 6763번 Speed fines are not fine! (0) | 2021.08.24 |