UVa 10573 - Geometry Paradox

來源:互聯網
上載者:User

標籤:style   blog   io   os   ar   sp   資料   div   2014   

題目:兩個相切的小圓r1,r2,同時外切於一個大圓R,已知兩小圓的半徑r1、r2,

            或者過兩小圓的被大圓截取的切線段長度t,求大圓面積減去兩小圓面積為多少。

分析:計算幾何。由題意可知如下等式:

            R = r1 + r2;

            t^2 = 4(R^2 - (r2-r1)^2)= 4r1r2;

            整理,得:

            S = π(R^2 - r1^2 - r2^2)= π 2r1r2 = π t^2 / 8。

說明:貌似沒有不成立的資料啊(⊙_⊙)。 

#include <iostream> #include <cstdlib>#include <cstdio>#include <cmath>using namespace std;double pi = 2.0*acos(0.0),a,b;char   buf[101];int main(){int n;while (cin >> n) {getchar();while (n --) {gets(buf);if (sscanf(buf, "%lf%lf", &a,&b) == 1) {if (a >= 0)printf("%.4lf\n",pi*a*a*0.125);else printf("Impossible.\n");}else {if (a >= 0 && b >= 0)printf("%.4lf\n",pi*a*b*2.0);else printf("Impossible.\n");}}}return 0;}


            S = π(R^2 - r1^2 - r2^2);

UVa 10573 - Geometry Paradox

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.