戳我穿越:http://acm.hdu.edu.cn/showproblem.php?pid=1735

对于贪心,二分,枚举等基础一定要掌握的很牢,要一步一个脚印走踏实

这是道贪心的题目,要有贪心的意识。

首先将所有为0的地方统计,因为是求最小的字数,所有最后一行后面的0可以看为空格直接减掉,

因为有m段(一定包括第一行),再减去m*2,最后枚举每行,将至少前两个为0的上一行的最后有多少

的0统计起来排序,再依次减去前m-1个大的,这样就保证了得到的答案是符合条件中最小的

code

 #include<cstdio>
#include<algorithm>
using namespace std;
int yj[][],lsy[];
bool cmp(int x,int y){return x>y;}
int main()
{
int n,m,x,sum,ans,i,j,k,flag;
while (~scanf("%d %d %d",&n,&m,&x))
{
sum=;
for (i=;i<=n;i++)
{
for (j=;j<=m;j++)
{
scanf("%d",&yj[i][j]);
if (!yj[i][j])
sum++;
}
}
//printf("%d\n",sum);
for (i=m;i>=;i--)
{
if (!yj[n][i]) sum--;
else break;
}
//printf("%d\n",sum);
k=;
for (i=;i<=n;i++)
{
ans=;flag=;
if (!yj[i][]&&!yj[i][])
{
flag=;
for (j=m;j>=;j--)
{
if (!yj[i-][j])
ans++;
else
break;
}
}
if (flag)
lsy[k++]=ans;
}
sum-=*x;x--;
/*for (i=1;i<k;i++)
printf("%d ",lsy[i]);
printf("\n");*/
sort(lsy+,lsy+k,cmp);
for (i=;i<=x;i++)
sum-=lsy[i];
printf("%d\n",sum);
}
return ;
}

hdu 1735(贪心) 统计字数的更多相关文章

  1. HDU 2008 数值统计

    题目链接:HDU 2008 Description 统计给定的n个数中,负数.零和正数的个数. Input 输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的 ...

  2. word2016_统计字数

    统计字数 审阅->字数统计

  3. textarea统计字数

    开发项目中经常会用到,textarea统计字数 源码如下: <!DOCTYPE html><html lang="en"><head> < ...

  4. textarea还剩余字数统计,支持复制粘贴的时候统计字数

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  5. HDU 1735 字数统计(模拟+一点点贪心的思想)

    题目戳我 字数统计 Time Limit: 1000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  6. hdu 1735 字数统计

    这道题是到贪心的题目,首先用ans记录下所有的0的个数,然后尽量去掉更多的0,剩下的0的个数就是最少的字数.首先想到最后一行的0的个数可以减掉,然后就是m行开头的两个0可以减掉.然后思考最多还可以减掉 ...

  7. Hdu 5289-Assignment 贪心,ST表

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=5289 Assignment Time Limit: 4000/2000 MS (Java/Others) ...

  8. codeforces 675E Trains and Statistic 线段树+贪心统计

    分析:这个题刚看起来无从下手 但是我们可以先简化问题,首先可以固定起点i,求出i+1到n的最小距离 它可以到达的范围是[i+1,a[i]],贪心的想,我们希望换一次车可以到达的距离尽量远 即:找一个k ...

  9. hdu 4803 贪心/思维题

    http://acm.hdu.edu.cn/showproblem.php?pid=4803 话说C++还卡精度么?  G++  AC  C++ WA 我自己的贪心策略错了 -- 就是尽量下键,然后上 ...

随机推荐

  1. Java8 parallelStream与迭代器Iterator性能

    定义一个测试类 public class TestParallelStream { private List<Integer> list; private int size; privat ...

  2. php支付宝接口 的使用

    下载地址(java/php都有) https://doc.open.alipay.com/doc2/detail?treeId=66&articleId=103571&docType= ...

  3. maven开发工具安装

    Maven安装并测试步骤: 1.下载并解压meaven.zip: 2.配置环境变量“M2_HOME”指向meaven安装目录: 3.添加“%M2_HOME%\bin;”到path环境变量中: 4.测试 ...

  4. vs中更改项目名称注意事项

    1,项目属性中的所有需要改的地方,还有程序集名称. 2,解决方案用记事本打开更改启动路径. 3,重新加载即可.

  5. CSS3 Backgrounds相关介绍

    CSS3 Backgrounds相关介绍 1.背景图片(background images)是在padding-box的左上角落脚安家的,我们可以使用background-position属性改变默认 ...

  6. harbor在centos7.4下面配置自签名证书(域名是端口映射)

    1.harbor安装,按常规安装. 注意事项,端口映射 端口要外网的与内网一至. 配置文件修改 vim docker-compose.yml proxy: image: vmware/nginx-ph ...

  7. 二叉树的镜像(python)

    题目描述 操作给定的二叉树,将其变换为源二叉树的镜像. 输入描述: 二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ ...

  8. Java 的静态工厂方法

    本文转载自:https://www.jianshu.com/p/ceb5ec8f1174 序:什么是静态工厂方法 Effective Java 2.1 静态工厂方法与构造器不同的第一优势在于,它们有名 ...

  9. Delphi异步编程:匿名线程与匿名方法

    异步编程,是项目中非常有用的而且常用的一种方法,大多以线程实现. 而Delphi传统方法使用线程略为烦琐,好在其后续版本中,提供一些方法,简化一些操作. 几个概念: 匿名线程:TAnonymousTh ...

  10. 【centos】centos中添加一个新用户,并授权

    前言 有时候给root用户不太方便,新建一个用于并赋予权限这个做法相对好些 创建新用户 创建一个用户名为:cmj [root@localhost ~]# adduser cmj 为这个用户初始化密码, ...