#include <iostream>
#include <cmath>
using namespace std;

int main() {
    int m, x, y, r, sum = 0;
    double avg;
    cin >> m;
    
    // 存储玉米田信息,初始品质都为1
    int corn[200001][200001] = {0};
    for (int i = -100000; i <= 100000; i++) {
        for (int j = -100000; j <= 100000; j++) {
            corn[i + 100000][j + 100000] = 1;
        }
    }

    // 模拟浇水
    for (int i = 0; i < m; i++) {
        cin >> x >> y >> r;
        for (int j = x - r; j <= x + r; j++) {
            for (int k = y - r; k <= y + r; k++) {
                // 判断点是否在圆内
                if (pow(j - x, 2) + pow(k - y, 2) < pow(r, 2)) {
                    corn[j + 100000][k + 100000]++;
                }
            }
        }
    }

    // 计算抽样检测的10株玉米的品质
    for (int i = 0; i < 10; i++) {
        cin >> x >> y;
        sum += corn[x + 100000][y + 100000];
    }

    // 计算平均品质
    avg = (double)sum / 10;
    printf("%.2lf", avg);

    return 0;
}
方伯伯浇水2 - C++ 代码实现 | 玉米田品质计算

原文地址: https://www.cveoy.top/t/topic/jCXD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录