JZOJ 3503. 粉刷(paint)
题目
Description
Input
第2到N+1行,每行一个长度为M的字符串,每个字符可能是’.’表示干净的,或者’X’表示这个格子有污点。
第N+2行,输入俩正整数表示R和C。
Output
Sample Input
输入1: 1 9 XXXXXXXXX 2 3 输入2: 11 14 XXX..XXX..XXX. .X..X....X...X .X..X....X...X .X..X....X...X .X...XXX..XXX. .............. ...XX...XXX... ....X......X.. ....X....XXX.. ....X......X.. ...XXX..XXX... 1 2
Sample Output
输出1: 1 输出2: 7
Data Constraint
对于100%的数据1≤N,M,R,C≤15。
分析
- n=15
- 那就枚举吧,枚举当前行刷不刷
- 然后计算出列的答案加上取min
代码
1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 int b[20][20],a[20][20],ans=100000000; 5 bool h[20],l[20],hh[20],ll[20]; 6 int n,m,r,c; 7 int check() 8 { 9 int t=0; 10 memcpy(b,a,sizeof(b)); 11 for (int i=1;i<=n;i++) 12 if (h[i]==1) 13 for (int j=1;j<=m;j++) 14 b[i][j]=0; 15 for (int j=1;j<=m;j++) 16 for (int i=1;i<=n;i++) 17 if (b[i][j]==1) 18 { 19 t++; 20 j+=c-1; 21 break; 22 } 23 return t; 24 } 25 void dfs(int x,int sum) 26 { 27 if (x>n) 28 { 29 ans=min(ans,sum+check()); 30 return; 31 } 32 for (int i=x;i<=min(x+r-1,n);i++) 33 h[i]=1; 34 dfs(min(x+r,n+1),sum+1); 35 for (int i=x;i<=min(x+r-1,n);i++) 36 h[i]=0; 37 dfs(x+1,sum); 38 } 39 int main () 40 { 41 cin>>n>>m; 42 char num; 43 for (int i=1;i<=n;i++) 44 for (int j=1;j<=m;j++) 45 { 46 cin>>num; if (num=='X') a[i][j]=1; 47 } 48 cin>>r>>c; 49 dfs(1,0); 50 cout<<ans; 51 }
转载于:https://www.cnblogs.com/zjzjzj/p/11370579.html
JZOJ 3503. 粉刷(paint)相关推荐
- 【纪中受难记】——Day17:本来能AK
(标题妄想). 95/0/0 第二题很水,后来花5分钟切了. 3503. 粉刷(paint) (Standard IO) Time Limits: 1000 ms Memory Limits: 13 ...
- JZOJ 1035. 【SCOI2009】粉刷匠
题目 Description windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. ...
- JZOJ 5627. 【NOI2018模拟4.3】paint
Description Input Output Sample Input 样例输入1 10 10 4 1 6 4 1 6 9 9 4 样例输入2 10 10 4 2 2 4 4 7 7 9 9 Sa ...
- BZOJ1296:[SCOI2009]粉刷匠
1296: [SCOI2009]粉刷匠 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2038 Solved: 1182 [Submit][Sta ...
- 牛客网 【每日一题】[SCOI2009]粉刷匠
链接: 题目描述 windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个格子最 ...
- BZOJ 1296: [SCOI2009]粉刷匠( dp )
dp[ i ][ j ] = max( dp[ i - 1 ][ k ] + w[ i ][ j - k ] ) ( 0 <= k <= j ) 表示前 i 行用了 j 次粉刷的机会能正 ...
- 1296: [SCOI2009]粉刷匠
Description windy有 N 条木板需要被粉刷. 每条木板被分为 M 个格子. 每个格子要被刷成红色或蓝色. windy每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色. 每个 ...
- bzoj 1296: [SCOI2009]粉刷匠(DP+DP)
1296: [SCOI2009]粉刷匠 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2339 Solved: 1348 [Submit][Sta ...
- bzoj1296【SCOI2009】粉刷匠
1296: [SCOI2009]粉刷匠 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 1479 Solved: 837 [ Submit][ ...
最新文章
- nginx同IP、同端口、不同域名时的转发
- centos树莓派安装mysql_用树莓派实现网络批量自动安装CentOS
- vb中如何才能有手型的光标?
- Eclipse配置注释模板的方法
- 【项目管理】合同和采购
- cmd连接不了mysql_cmd连接mysql操作命令
- 问世 20 多年的 PHP 还是最好的编程语言吗?
- 国二考试c语言考场能炒么,国2考试题_计算机国二office高级应用考试的题目是从题库20套里抽其中一套还是别的题目_淘题吧...
- 一位女性程序员的职业规划
- 女子深夜醉酒后躺在马路中央,被路过的十几辆汽车压过,怎么定罪?
- 1.3寸IIC OLED SH1106和Arduino库的适配性鸡肋问题
- Masonry约束自定义TableViewCell自适应行高的约束冲突的问题
- 7-6 最热门的职业
- 14个种类,600款笔刷!如何做一套属于自己的精美笔刷?
- 《虚拟化安全解决方案》一2.2 配置VMware ESXi
- 在Vue中使用flex布局 echarts多图标不能自适应缩放问题
- Windows 11 正式版 ISO 镜像下载大全
- 中国机器人产业图谱(2022)
- 国际现货黄金换算须知
- python谷歌翻译库googletrans使用 避坑!
热门文章
- Homebrew命令具体解释
- CentOS 7运维管理笔记(5)----源代码安装Apache 2.4,搭建LAMP服务器
- (转)Inno Setup入门(十七)——Inno Setup类参考(3)
- PAT1003. 我要通过!
- c语言 选择结构,C语言学习:选择结构
- hello python jpush_Python人脸识别 + 手机推送,老板来了你就会收到短信提示
- python统计句子中单词个数_【python统计单词数量】作文写作问答 - 归教作文网
- DFINITY创始人:目前仍以Q1路线图为主要目标,正在进行创世启动前的安全审计
- SAP License:COPA凭证冲销
- 反欺诈之设备指纹(下篇)