当前位置: 首页 > news >正文

题解:洛谷 P3392 涂条纹

【题目来源】

洛谷:P3392 涂条纹 - 洛谷 (luogu.com.cn)

【题目描述】

某国法律规定,只要一个由 \(N\times M\) 个小方块组成的旗帜符合如下规则,就是合法的图案。

  • 从最上方若干行(至少一行)的格子全部是白色的;
  • 接下来若干行(至少一行)的格子全部是蓝色的;
  • 剩下的行(至少一行)全部是红色的;

现有一个棋盘状的布,分成了 \(N\)\(M\) 列的格子,每个格子是白色蓝色红色之一,小 a 希望把这个布改成合法图案,方法是在一些格子上涂颜料,盖住之前的颜色。

小 a 很懒,希望涂最少的格子,使这块布成为一个合法的图案。

【输入】

第一行是两个整数 \(N,M\)

接下来 \(N\) 行是一个矩阵,矩阵的每一个小方块是 W(白),B(蓝),R(红)中的一个。

【输出】

一个整数,表示至少需要涂多少块。

【输入样例】

4 5
WRWRW
BWRWB
WRWRW
RWBWR

【输出样例】

11

【解题思路】

image

【算法标签】

《洛谷 P3392 涂条纹》 #模拟# #枚举# #洛谷月赛#

【代码详解】

#include <bits/stdc++.h>
using namespace std;int main() 
{int n, m, sum, ans = 1e9;  // 定义变量:n-行数,m-列数,sum-临时和,ans-最小修改次数(初始设为极大值)int a1[55] = {0}, a2[55] = {0}, a3[55] = {0};  // 统计每行W/B/R的数量char tmp;  // 临时存储每个字符// 输入行数n和列数mcin >> n >> m;// 统计每行W/B/R的数量for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) {cin >> tmp;if (tmp == 'W') a1[i]++;  // 统计W的数量if (tmp == 'B') a2[i]++;  // 统计B的数量if (tmp == 'R') a3[i]++;  // 统计R的数量}// 枚举所有可能的划分方式for (int w = 1; w <= n - 2; w++)           // W区域的行数(至少1行,最多n-2行)for (int b = 1; b <= n - w - 1; b++)   // B区域的行数(剩余行中至少1行){sum = 0;  // 重置临时和// 计算W区域需要修改的次数(非W的字符数)for (int i = 1; i <= w; i++) sum += m - a1[i];  // 该行需要修改的字符数 = 总字符数 - W的数量// 计算B区域需要修改的次数(非B的字符数)for (int i = w + 1; i <= w + b; i++) sum += m - a2[i];  // 该行需要修改的字符数 = 总字符数 - B的数量// 计算R区域需要修改的次数(非R的字符数)for (int i = w + b + 1; i <= n; i++) sum += m - a3[i];  // 该行需要修改的字符数 = 总字符数 - R的数量// 更新最小修改次数if (sum < ans) ans = sum;}// 输出最小修改次数cout << ans;return 0;
}

【运行结果】

4 5
WRWRW
BWRWB
WRWRW
RWBWR
11
http://www.jsqmd.com/news/389903/

相关文章:

  • 题解:洛谷 P1088 [NOIP 2004 普及组] 火星人
  • 题解:洛谷 P1706 全排列问题
  • 2026评测揭秘:三边封拉链袋哪些厂商值得信赖?包装袋/四边封包装袋/自立拉链袋/纹路袋,三边封拉链袋生产厂家有哪些 - 品牌推荐师
  • 真空吸盘实力厂家大揭秘:2026年行业优选推荐,国内口碑好的真空吸盘品牌口碑推荐榜贵磁设备专注行业多年经验,口碑良好 - 品牌推荐师
  • 题解:洛谷 P1157 组合的输出
  • 题解:洛谷 P2089 烤鸡
  • 题解:洛谷 P1036 [NOIP 2002 普及组] 选数
  • 题解:洛谷 P1618 三连击(升级版)
  • lanqiaoOJ 1020:阶乘约数 ← 整数唯一分解定理 + 约数个数定理
  • 题解:洛谷 P2241 统计方形(数据加强版)
  • 综述不会写?千笔,王者级的AI论文写作软件
  • 定稿前必看!更贴合继续教育的AI论文平台,千笔·专业论文写作工具 VS WPS AI
  • 08]delphi10.3剪贴板的图片,保存到文件
  • 评测2026年主流安检设备,揭秘可靠直销渠道,安检门/智能安检/安检仪/金属探测门/安检设备,安检设备源头厂家哪家好 - 品牌推荐师
  • 数据码农马年大吉
  • 定稿前必看!9个降AIGC工具测评:本科生降AI率必备指南
  • 导师推荐!继续教育论文神器 —— 千笔AI
  • 格式总出错?千笔AI,全民喜爱的AI论文写作软件
  • 新手也能上手 9个降AI率工具:研究生降AI率全维度测评
  • 生产环境VSCode中ESLint与Prettier冲突终极解决方案(90%开发者都踩过的坑)最佳实践与性能优化
  • 导师推荐 10个 AI论文写作软件:研究生毕业论文与科研写作必备工具测评
  • 吐血推荐! AI论文平台 千笔AI VS speedai,自考写论文必备神器!
  • 拖延症福音!降AI率平台 千笔AI VS PaperRed,自考党必备
  • AI岗位真的比网安岗位强多了?我们是否该“All in AI Agent”?——一场关于技术趋势、安全边界与职业选择的深度思辨
  • 用数据说话 AI论文写作软件 千笔ai写作 VS Checkjie 更贴合自考需求
  • 科研党收藏!千笔AI,冠绝行业的降AI率平台
  • 深入解析:Linux:信号保存下(信号二)
  • Metasploit Framework 6.4.115 (macOS, Linux, Windows) - 开源渗透测试框架
  • 【Windows】终末地导致的System进程异常高占用内存和磁盘资源##36
  • Go错误处理与日志记录:构建健壮且可观测的应用