博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
格子染色
阅读量:5348 次
发布时间:2019-06-15

本文共 818 字,大约阅读时间需要 2 分钟。

【题目描述】

有n条木板需要被粉刷。每条木板被分为m个格子。每个格子要被刷成红色或蓝色。

【输入描述】

每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色。每个格子最多只能被粉刷一次。

如果只能粉刷t次,询问最多能正确粉刷多少格子。

一个格子如果未被粉刷或者被粉刷错颜色,就算错误粉刷。

【输出描述】

第一行包含三个整数,n、m、t。接下来有n行,每行一个长度为m的字符串,0表示红色,1表示蓝色。

【样例输入】

3 6 3

111111
000000
001100

【样例输出】

16

【数据范围及提示】

1 ≤ n,m ≤ 50,0 ≤ t ≤ 2500。

源代码:#include
#include
using namespace std;int n,m,T,ans(0),Sum[2501],f[2501][2501],DP[2501][2501]; //Sum[i]=该行前i个格子是1的格子的数目。char i[2501];int main(){ scanf("%d%d%d",&n,&m,&T); for(int k=1;k<=n;k++) { scanf("%s",i+1); for (int a=1;a<=m;a++) Sum[a]=Sum[a-1]+(i[a]=='1'); for (int a=1;a<=m;a++) for(int b=1;b<=m;b++) { f[b][a]=0; //取最大值先赋最小值。 for (int c=0;c

转载于:https://www.cnblogs.com/Ackermann/p/5823225.html

你可能感兴趣的文章
《Linux内核设计与实现》第四章学习笔记
查看>>
使用iperf测试网络性能
查看>>
图片的显示隐藏(两张图片,默认的时候显示第一张,点击的时候显示另一张)...
查看>>
Docker 安装MySQL5.7(三)
查看>>
python 模块 来了 (调包侠 修炼手册一)
查看>>
关于CSS的使用方式
查看>>
分析语句执行步骤并对排出耗时比较多的语句
查看>>
原生JS轮播-各种效果的极简实现
查看>>
计数器方法使用?
查看>>
带你全面了解高级 Java 面试中需要掌握的 JVM 知识点
查看>>
sonar结合jenkins
查看>>
解决VS+QT无法生成moc文件的问题
查看>>
AngularJs练习Demo14自定义服务
查看>>
关于空想X
查看>>
CF1067C Knights 构造
查看>>
[BZOJ2938] 病毒
查看>>
webstorm修改文件,webpack-dev-server不会自动编译刷新
查看>>
Scikit-learn 库的使用
查看>>
CSS: caption-side 属性
查看>>
python 用数组实现队列
查看>>