社区讨论

求助,42pts

P3392涂条纹参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@m0qi1u45
此快照首次捕获于
2024/09/06 17:14
2 年前
此快照最后确认于
2025/11/04 21:40
4 个月前
查看原帖
CPP
#include <iostream>
using namespace std;
char map[55][55];
int main()
{
    int n, m, w[55] = {0}, b[55] = {0}, r[55] = {0};
    cin >> n >> m;
    for (int i = 1;i <= n;i++)
    {
        for (int j = 1;j <= m;j++)
        {
            cin >> map[i][j];
        }
    }
    for (int i = 1;i <= n;i++)
    {
        for (int j = 1;j <= m;j++)
        {
            if (map[i][j] != 'W')
            {
            	w[i]++;
			}
			if (map[i][j] != 'B')
			{
				b[i]++;
			}
			if (map[i][j] != 'R')
			{
				r[i]++;
			}
        }
    }
    /*cout << "\n";
    for (int i = 1;i <= n;i++)
    {
    	cout << w[i] << " ";
	}
	cout << "\n";
	for (int i = 1;i <= n;i++)
    {
    	cout << b[i] << " ";
	}
	cout << "\n";
	for (int i = 1;i <= n;i++)
    {
    	cout << r[i] << " ";
	}
	cout << "\n";*/
	int ans = 10000000, wsum = 0, bsum = 0, rsum = 0;
	for (int i = 1;i <= n - 2;i++)
	{
		wsum += w[i];
		bsum = 0, rsum = 0;	
		for (int j = i + 1;j <= n - 1;j++)
		{
			bsum += b[j];
			for (int k = j + 1;k <= n;k++)
			{
				rsum += r[k];
			}
			int sum = wsum + rsum + bsum;
			ans = min(sum, ans);
		}
	}
	cout << ans;
	return 0;
}
#1#2#3可以过,#4#5#6#7WA求助

回复

0 条回复,欢迎继续交流。

正在加载回复...