QwQ,求助怎么前缀和优化
  • 板块P3392 涂国旗
  • 楼主Max6700
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/9/29 12:02
  • 上次更新2023/11/2 17:22:13
查看原帖
QwQ,求助怎么前缀和优化
935012
Max6700楼主2023/9/29 12:02

注:代码能A,但如果想过 NN ,MM <= 1000 的数据该怎么优化?

机构数据[大悲]

#include<bits/stdc++.h>
using namespace std;

char a[100][100];

int n,m;

int minn=1e7;

int main(){
    
    cin>>n>>m;
    
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            cin>>a[i][j];
    
    for(int i=1;i<=n-2;i++)//白色边界
    {
        for(int j=i;j<n;j++)//蓝色边界
        {
            int sum=0;
            for(int k=1;k<=i;k++)//枚举白色区域行
                for(int g=1;g<=m;g++)//枚举白色区域列
                    if(a[k][g]!='W')//此位置不是白色,就要涂
                        sum++;
            for(int k=i+1;k<=j;k++)//枚举蓝色区域行
                for(int g=1;g<=m;g++)//枚举蓝色区域列
                    if(a[k][g]!='B')//此位置不是蓝色,就要涂
                        sum++;        
            for(int k=j+1;k<=n;k++)//枚举红色区域行
                for(int g=1;g<=m;g++)//枚举红色区域列
                    if(a[k][g]!='R')//此位置不是红色,就要涂(累
                        sum++;
            minn=min(sum,minn);//求要涂的次数最小值
        }
    }
    cout<<minn;
    return 0;
}
2023/9/29 12:02
加载中...