luogu#B4530. [信息与未来 2026] 快递无人机

[信息与未来 2026] 快递无人机

题目描述

Dr. X 制作了一台快递无人机,正在测试投送包裹。

:::align{center} :::

投送的目标区域是一个圆形空地,它的边界在地图上用星号 * 标出。地图上的空白区域用半角点号 . 表示,每个包裹的落点用小写字母 o 标记。下图是一个例子:

........o
...***...
..*****..
..*...*..
..*.o.*..
..*...*..
..*****..
...***...
.........

上图中,* 围成的区域代表圆形空地。包裹 o 如果落在边界围成的区域内部,就是一次正确投送。Dr. X 想请你统计正确投送的包裹数量。包裹要么在圆内,要么在圆外,保证不会在圆形的边界上。

输入格式

输入第一行包含两个空格分隔的整数 nnmm,表示地图的行数和列数。接下来 nn 行,每行 mm 个字符,描述整张地图。字符只包含 *(边界)、 .(空白) 和 o(包裹)。保证 * 恰好围成一个闭合的环形边界,且地图中至少有一个 o

输出格式

输出一个整数,表示落在圆形区域内的包裹数量。

9 9
........o
...***...
..*****..
..*...*..
..*.o.*..
..*...*..
..*****..
...***...
.........
1
12 13
.............
.....***.....
...*******...
...*.....*...
..*...o...*..
..*.......*..
..*..o.o..*..
..*.......*..
...*.....*...
...*******...
.....***.....
o............
3

提示

数据规模

  • 对于 40%40\% 的数据,满足 n,m10n, m \le 10
  • 对于 100%100\% 的数据,满足 3n,m503 \le n, m \le 50