0558 Atcoder ABC 330- Counting Ls | OJ题库 | CODE STUDY
CODE STUDY
Programming Practice Platform

欢迎回来

0558

Atcoder ABC 330- Counting Ls

Easy 时间限制 1000 ms 内存限制 262144 KB
数论-组合 Atcoder

题目详情

返回题库

题目描述

给你一个N×N的网格。设(i,j)表示从顶部起第i行和从左侧起第j列中的单元格。每行单元格的状态有给出的长度为N的字符串表示S1,S2....SN​ ,格式如下:

  • 如果Si的第j个字符是o,在单元格(i,j)中有一个o。
  • 如果Si的第j个字符是x,在单元格(i,j)中有一个x。

求满足以下所有条件的单元格的三元组数:

  1. 三元组中的三个单元格是不同的。
  2. 所有三个单元格都写有一个o。
  3. 正好有两个单元格在同一行。
  4. 正好有两个单元格在同一列中。

求一共多少中符合要求的组合

输入描述

第一行,N

第2-N+1行,N行字符串S1,S2,S3....SN代表每一个行单元格的状态


数据范围

  • N是介于2和2000之间的整数,包括2和2000。
  • Si​是由o和x组成的长度为N的字符串。

输出描述

输出符合要求的三元组数量

测试样例

样例支持多行内容展示
样例1
输入
3
ooo
oxx
xxo
输出
4

以下四组组合满足要求
(1,1),(1,2),(2,1)
(1,1),(1,3),(2,1)
(1,1),(1,3),(3,3)
(1,2),(1,3),(3,3)
样例2
输入
4
oxxx
xoxx
xxox
xxxo
输出
0
样例3
输入
15
xooxxooooxxxoox
oxxoxoxxxoxoxxo
oxxoxoxxxoxoxxx
ooooxooooxxoxxx
oxxoxoxxxoxoxxx
oxxoxoxxxoxoxxo
oxxoxooooxxxoox
xxxxxxxxxxxxxxx
xooxxxooxxxooox
oxxoxoxxoxoxxxo
xxxoxxxxoxoxxoo
xooxxxooxxoxoxo
xxxoxxxxoxooxxo
oxxoxoxxoxoxxxo
xooxxxooxxxooox
输出
2960
editor.py

提交前会先自动运行样例。只有样例全部通过,才会进入后端正式判题。