洛谷 P3392 涂国旗

 P3392 涂国旗

题目描述

某国法律规定,只要一个由N*M个小方块组成的旗帜符合如下规则,就是合法的国旗。(毛熊:阿嚏——)

  • 从最上方若干行(>=1)的格子全部是白色的。

  • 接下来若干行(>=1)的格子全部是蓝色的

  • 剩下的行(>=1)全部是红色的

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

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

输入输出格式

输入格式:

 

第一行是两个整数,N,M

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

 

输出格式:

 

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

 

输入输出样例

输入样例#1:
4 5
WRWRW
BWRWB
WRWRW
RWBWR
输出样例#1:
11

说明

样例解释:

目标状态是

WWWWW
BBBBB
RRRRR
RRRRR

一共需要改11个格子

对于100%的数据,N,M<=50

 

/*纯暴力枚举 O(n^4) 一层一层搜 依次更新ans找到最小值*/
#include<cstdio>
int n,m,ans=1e9;
char a[52][52];
int main()
{scanf("%d%d",&n,&m);for (int i=0;i<n;i++)scanf("%s",a[i]);for (int i=0;i<n-2;i++)for (int j=i+1;j<n-1;j++){int tot=0;for (int x=0;x<=i;x++)for (int y=0;y<m;y++)if (a[x][y]!='W')tot++;    //染白需几步 for (int x=i+1;x<=j;x++)for (int y=0;y<m;y++)if (a[x][y]!='B')tot++;    //染蓝需几步 for (int x=j+1;x<n;x++)for (int y=0;y<m;y++)if (a[x][y]!='R')tot++;    //染红需几步 if (tot<ans)ans=tot;}printf("%d",ans);return 0;
}

 

转载于:https://www.cnblogs.com/xiaoqi7/p/5905161.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/418020.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flask 接口 让别人能访问_flask搭建一个前后端分离的系统

我们通常说三端&#xff0c;pc端&#xff0c;android端和ios端。如果前后端不分离&#xff0c;相当是要做三套系统。如果前后端分离的话&#xff0c;可以共用一个后端&#xff0c;前端各自做自己的&#xff0c;不用管后端。前后端不分离在前后端不分离的应用模式中&#xff0c;…

SpringMVC下5中参数类型传递

1、普通参数 //普通参数:请求参数名与形参名不同RequestMapping("/commonParamDifferentName")ResponseBodypublic String commonParamDifferentName(RequestParam("name") String username, int age){System.out.println("普通参数传递:username:&qu…

centos 没有nmtui命令_Linux free 命令

在Linux/Unix 系统上&#xff0c;free是一个很受系统管理员欢迎的命令&#xff0c;它是一个功能强大的工具&#xff0c;他能以一种易读的方式把内存使用情况展示出来free 展示了系统中空闲和已经使用了的物理内存、交换内存以及内核的缓冲区和页面缓存&#xff0c;所有展示的信…

laravel 队列学习

s d f大撒发转载于:https://www.cnblogs.com/toyanglei/p/5911707.html

spring中注解来创建bean

一、 核心配置文件中的组件来扫描对应包下面的所有类来匹配。 当我们使用ApplicationContext实例化的对象调用getBean函数获取bean的时候&#xff0c;内部时根据Component内的值来确定创建哪个对象&#xff1a; Component中的值就类似之前bean配置中id的作用一样。 二、纯注解…

django设置超级管理员_Django的简介与安装

Django的简介与安装Django 是用 Python 开发的一个免费开源的 Web 框架&#xff0c;可以用来快速搭建优雅的高性能网站。它采用的是“MVC”的框架模式&#xff0c;即模型 M、视图 V 和控制器 C。 Django 最大的特色&#xff0c;在于将网页和数据库中复杂的关系&#xff0c;转化…

操作目录下的文件或目录

1、显示/var目录下所有以l开头&#xff0c;以一个小字母结尾&#xff0c;且中间出现一位数字的文件或目录&#xff1b; # ls /var/l*[[:digit:]]*[[:lower:]] 2、显示/etc目录下&#xff0c;以任意一位数字开头&#xff0c;且以非数字结尾的文件或目录&#xff1b; …

SpringMVC的准备工作

一、 先通过Maven创建一个webapp项目 创建完成之后在pom文件中设置一些基本的信息&#xff1a; 1、打包方式 <packaging>war</packaging> 以war包的形式打包 2、相关依赖 现阶段只有3个&#xff1a;SpringMVC、thymeleaf与Spring整合、ServletAPI <dependencie…

postman安装报错 无法定位_接口测试工具postman安装及使用

目前的postman插件如果想正常使用&#xff0c;必须安装Postman Interceptor插件&#xff0c;这样才能直接使用chrome浏览器的cookie等信息&#xff0c;否则postman是无法完成老版本的功能的。直接使用chrome appstore安装是没有问题的&#xff0c;但是如果是离线安装&#xff0…

SpringMVC之注解RequestMapping

一、RequestMaapping的基本介绍 RequestMaapping的功能就是将请求和处理请求和处理请求的控制器关联起来&#xff0c;建立映射关系&#xff0c;当DispathcerServlet接收到请求&#xff0c;会从Controller中找对应的方法来处理该请求。 eg: Controller RequestMapping("/…

UVa11988 Broken Keyboard(练习链表使用)

向量和数组的优势是可以随机的存取元素和在末尾添加删除元素&#xff0c;而当插入元素时&#xff0c;需要移动大量的数据&#xff0c;消耗大量的时间。而链表的优势是可以在O(1)删除和插入数据。所以在频繁移动元素时&#xff0c;可以使用链表。 分析&#xff1a;如果用一个数组…

virtualbox配置apache_virtualbox 网络配置 (转)

http://www.vmbest.com/school/2-virtualbox-school/13-virtualbox-net-config-four-plan“网络”配置页面有4个方案&#xff1a;1&#xff1a;NAT 网络地址转换(Network Address Translation)2&#xff1a;Birdged Network 桥接3&#xff1a;Internal Network 内部网络(可以…

请领导批阅文件怎么说_领导说“谢谢”,该怎么回?低情商才说不客气,高情商的都这样说!...

职场中&#xff0c;当我们顺手帮了领导个小忙或者领导跟我们要工作资料&#xff0c;我们发给领导的时候&#xff0c;领导可能会顺口说“收到&#xff0c;谢谢”&#xff0c;这样的时候&#xff0c;其实领导就是表示收到了。我们如何回复&#xff0c;才不至于失了礼貌&#xff0…

387. First Unique Character in a String

Given a string, find the first non-repeating character in it and return its index. If it doesnt exist, return -1. Examples: s "leetcode" return 0.s "loveleetcode", return 2. 思路&#xff1a;扫一遍&#xff0c;用array记录char的重复次数。…

vue的简单学习

vue和thymeleaf &#xff1a; 若先显示框架后加载数据则用vue 若后端处理好之后发送给前端页面显示用thymeleaf (弹幕) 对于前后端分离的认识&#xff1a; 使用vue 将前端页面、框架等建立好&#xff0c;只需要后端发送数据即可 但thymeleaf就需要在服务器启动之前将数据保存到…

easyui下拉框option写死_JavaScript_jQuery+easyui中的combobox实现下拉框特效,1.第一种写法:Input框中显示: - phpStudy...

jQueryeasyui中的combobox实现下拉框特效1.第一种写法&#xff1a;Input框中显示&#xff1a;2. 第二种用法&#xff0c;在list列表中显示&#xff1a;类别3. 第二种的另一种写法&#xff1a;类别以上3种方法均可实现jQuery.easyui的下拉框特效&#xff0c;大家自由选择&#x…