3 条题解
-
4
using namespace std; int w[3000]={0};//每行W有几个 int b[3000]={0}; int r[3000]={0}; char a[60][60]={0}; int main(){ ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n,m; cin>>n>>m; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ cin>>a[i][j]; if(a[i][j]=='W'){ w[i]++; }else if(a[i][j]=='B'){ b[i]++; }else{ r[i]++; } } } int min=3000; for(int i=1;i<=n-2;i++){ for(int j=1;j<=n-1-i;j++){//枚举W、B、R区间并计算 int sum=0; for(int k1=1;k1<=i;k1++){ sum+=m-w[k1]; } for(int k2=i+1;k2<=n-j;k2++){ sum+=m-b[k2]; } for(int k3=n-j+1;k3<=n;k3++){ sum+=m-r[k3]; } if(min>sum) min=sum; } } cout<<min<<endl; return 0; }
信息
- ID
- 1161
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 5
- 标签
- 递交数
- 52
- 已通过
- 20
- 上传者