CF52B.Right Triangles

普及/提高-

通过率:0%

时间限制:2.00s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a n × m field consisting only of periods ('.') and asterisks ('*'). Your task is to count all right triangles with two sides parallel to the square sides, whose vertices are in the centers of '*'-cells. A right triangle is a triangle in which one angle is a right angle (that is, a 90 degree angle).

给你一个 n×mn \times m 的网格,其中仅包含圆点('.')和星号('')。你的任务是统计所有满足以下条件的直角三角形的个数:该三角形的两条直角边分别与网格的边平行,且其三个顶点均位于星号('')所在单元格的中心。直角三角形是指其中一个角为直角(即 90∘90^\circ 角)的三角形。

输入格式

The first line contains two positive integer numbers n and m (1 ≤ n, m ≤ 1000). The following n lines consist of m characters each, describing the field. Only '.' and '*' are allowed.

第一行包含两个正整数 nn 和 mm(1 ≤ n, m ≤ 10001 ≤ n, m ≤ 1000)。接下来的 nn 行,每行包含 mm 个字符,用于描述该区域。只允许出现字符 . 和 *。

输出格式

Output a single number — total number of square triangles in the field. Please, do not use %lld specificator to read or write 64-bit integers in C++. It is preffered to use cout (also you may use %I64d).

输出一个整数——场地中正方形三角形的总数。请注意,在 C++ 中读取或写入 64 位整数时,请勿使用 %lld 格式说明符;推荐使用 cout(也可使用 %I64d)。

输入输出样例

  • 输入#1

    2 2
    **
    *.

    输出#1

    1
  • 输入#2

    3 4
    *..*
    .**.
    *.**

    输出#2

    9

输入解题思路,AI测评打分。不知道怎么写?

首页