LightOj1056 - Olympics(简单数学题)
Posted 西瓜不懂柠檬的酸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LightOj1056 - Olympics(简单数学题)相关的知识,希望对你有一定的参考价值。
题目链接:http://lightoj.com/volume_showproblem.php?problem=1056
题意:已知体育场的形状是由一个矩形+两边的两个部分组成,两边的两个部分是属于同一个圆的;并且知道体育场的周长是400米,然后知道了,矩形的长宽之比,求矩形具体的长宽为多少;
根据比例找到圆的半径和对应弧的圆心角即可;
#include <stdio.h> #include <algorithm> #include <cstring> #include <cmath> using namespace std; const int N = 2010; const double eps = 1e-6; const double PI = acos(-1); int main() { int T, t = 1, A, B; double a, b, r; scanf("%d", &T); while(T--) { scanf("%d : %d", &A, &B); a = atan(A*1.0/B); b = PI - 2*a; r = sqrt(B*B/(2-2*cos(b))); double l = r*b; double length = 200*A/(A+l); double width = length*B/A; printf("Case %d: %.6f %.6f\\n", t++, length, width); } return 0; }
以上是关于LightOj1056 - Olympics(简单数学题)的主要内容,如果未能解决你的问题,请参考以下文章
G. The Galactic Olympics(2016-2017 ACM-ICPC, Egyptian Collegiate Programming Contest (ECPC 16)题解)(代码
Help Hanzo (LightOJ - 1197) 简单数论筛区间质数 (未完成)
POJ 1056 IMMEDIATE DECODABILITY Trie 字符串前缀查找