列表

详情


NC205067. 牛牛爱几何

描述

众所周知,牛牛是个数学玩家,那么他自然是喜欢几何的。但是牛牛的同学牛可乐却不以为然。牛牛很生气,抛出了珍藏多年的几何题。牛可乐貌似不会,这下尴尬了,为了不丢掉面子,他请来了即将ak的你,希望你能帮他算出阴影部分的面积。(外层是一个正方形,图既是轴对称又是中心对称,对于图中的四条弧线,是以正方形每条边的中点为圆心,直径为边长的半圆弧)

输入描述

多组输入。
每组输入一个整数n(1≤n≤107),表示正方形的边长。

输出描述

每组输出一行表示阴影部分的面积,答案请保留小数点后六位。

示例1

输入:

10

输出:

57.079633

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Java 解法, 执行用时: 1815ms, 内存消耗: 33048K, 提交时间: 2023-08-11 14:48:16

import java.util.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		while(sc.hasNext()) {
			double n = sc.nextLong();
			double r = n/2;
			double s = (Math.PI*r*r/2-n*n/4)*4;
			System.out.printf("%.6f\n", s);
		}
	}
}

Python3 解法, 执行用时: 652ms, 内存消耗: 6568K, 提交时间: 2023-08-11 14:46:54

import math
from sys import stdin, stdout

for line in stdin:
    n = int(line.strip())
    ans = (n**2 * math.pi) / 2 - n**2
    print('%.6f'%ans)

Python3 解法, 执行用时: 764ms, 内存消耗: 6384K, 提交时间: 2023-08-11 14:45:50

import math
n = open(0)
for i in n:
    out = 2 * math.pi * pow(int(i)/2, 2) - int(i) ** 2
    print(round(out, 6))

上一题