游客 Signup | Login
中文 | En

3612 - 彩色的棋子(chess)

S正趴在地上画画,发现书桌上有一个国际象棋棋盘,上面还放了一些棋子。她想用手中的彩笔给这些棋子都涂上颜色,使得每一行或每一列里没有颜色相同的棋子。

S想知道她至少要用几种彩笔呢?

Input

第一行一个整数N1≤N≤100),表示国际象棋的棋盘规模是N*N的。

接下来是一个NN的字符矩阵,由”””.”两种字符组成。如果矩阵中第i行第j列的字符是”*”,则表示棋盘上第i行第j列的格子中有一个棋子;如果是”.”,则那个格子是空着的。

Output

输出一个整数M,表示至少要涂M种颜色。

Examples

Input

2
*.
**

Output

2

Solution C++

#include <bits/stdc++.h>
using namespace std;
int r[101], c[101]; // r行, c列 
int main()
{
	int n, ans = 0;
	char ch;
	cin >> n;
	for (int i = 1; i <= n; i++)
		for (int j = 1; j <= n; j++)
		{
			cin >> ch;
			if (ch == '*') 
			{
				r[i]++, c[j]++; 
				ans = max(ans, max(r[i], c[j]));
			}
		}
	cout << ans << endl;
	return 0;
}

Time Limit 1 second
Memory Limit 128 MB
Discuss Stats
上一题 下一题