题号:NC243148
时间限制:C/C++/Rust/Pascal 4秒,其他语言8秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld
题目描述
有一天,小哈从他的老师那得到了一个问题。他的老师想为学校设计一个其中有一些圆相切的大标志。而现在,问题来了。老师想在一个大平面上画出标志。您可以在Figure1中看到图的示例:
首先,小哈的老师给了他两个很大的圆,它们彼此相切。然后,他想在较小的圆圈之外的区域添加更多的小圆圈,其次,在更大的圆圈内(如果你仔细看Figure1,你可能更容易理解这一点),每个小圆圈都是按以下原则添加的:
*您应该按照Figure1的顺序添加小圆圈。
*每次添加一个小圆圈时,应确保它与其他圆圈(2 或 3 个圆圈)相切,如Figure1所示。
老师想知道他在创作他的杰作时会使用的颜料总量。小哈不知道如何回答这个问题,所以他来找你。老师会给你他想在图中添加的小圆圈的数量。你应该编写一个程序来计算所有小圆圈的总面积。
输入描述:
第一行包含一个整数
,表示测试用例的数量。
对于每个测试用例,第一行包含两个正整数
和
,即两个大圆的半径。假设这两个圆在内部相切。
第二行包含一个正整数
,也就是老师要加的小圆圈数。
输出描述:
对于每个测试用例:
一行中输出一个数字,表示小圆圈的总面积。精度误差小于
。
备注:
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=6158