Searching for Nessy

文章讨论了一个关于尼斯湖水怪的科学探索模拟,其中提到2003年BBC的声纳调查未发现水怪。现在面临的问题是,在给定的n行m列网格中,如何用最少的声纳设备来覆盖整个湖泊(除边界外),以确保全面探测。提供的C++代码片段给出了一个简单的解决方案,即以每3x3区域放置一个声纳。
摘要由CSDN通过智能技术生成
题目描述

尼斯湖水怪是一种神秘且身份不明的动物,据说栖息在苏格兰北部Inverness 市附近的尼斯湖,一个大型深水湖。尼斯湖水怪通常被归类为湖水怪的一类。 2003 年 7 月,BBC 报道称,一个 BBC 团队使用 600 个彼此独立的声纳波束对尼斯湖进行了广泛的调查,在湖中没有发现任何“水怪”(即任何已知或未知的大型动物)的踪迹。BBC的研究小组得出结论,尼斯湖水怪并不存在。现在我们想重复这个实验。 给出一个 n 行 m 列的网格,表示湖泊,6≤n, m≤10000,计算您要放在正方形方格中的声纳波束的最小数量 s,使得我们可以了解网格中的每个位置的情况,条件如下: • 一个声纳在网格中占据一个正方形方格;声纳波束覆盖其自身所在的正方形方格和相邻的正方形方格; • 边界的正方形方格不需要被声纳覆盖,因为尼斯湖水怪不可能躲在那里(她太大了);

图 1

例如,图 1,其中 X 表示声纳,阴影的正方形方格由其声纳波束所覆盖的区域;第二张图给出一个解决方案。

输入输出格式

输入格式 输入的第一行给出一个整数 t,表示测试用例的数量。每个测试用例一行,给出两个用空格隔开的数字,6≤n, m≤10000,也就是网格的大小(n 行 m 列)。

输出格式 对于每个测试用例,输出一行,给出符合上述条件声纳的最小数量。

输入输出样例1

输入

 
  1. 3
  2. 6 6
  3. 7 7
  4. 9 13

输出

 
  1. 4
  2. 4
  3. 12

 

#include <iostream>
int main(){
    int t,n,m;
    scanf("%d",&t);
    while(t>0){
        scanf("%d%d",&n,&m);
        printf("%d\n",(n/3)*(m/3));
        t--;
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Swain_Woo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值