codeforces 803D Magazine Ad(二分+贪心)
Magazine Ad
题目链接:http://codeforces.com/contest/803/problem/D
——每天在线,欢迎留言谈论。
题目大意:
给你一个数字k,和一行字符 例:
garage for sa-le
其中这行字符串能够在 ' '与'-'的后面分割。例如分割为:(点代表空格)
garage.
for.
sa-
le
求:分割成不超过k行的情况下的最小宽度。(宽度:最大行的字符个数)
思路:
答案一定在 到 所给字符串长度 之间。
①通过二分宽度 来逼近最小宽度。
判断每行宽度<=m 并在k行内完成分割时
②贪心地把每行填的不能再填为止。
AC代码:
#include <iostream>
#include <cstdio>
#include <string>
using namespace std;
string ss;
int n;
bool isok(int k)//是否能在k宽度下满足条件
{
int a(),b1(),b2();//a行数 b 宽度
for(int i=;i<ss.size();i++)
{
if(i!=ss.size()-)
b2++;
if(ss[i]==' '||ss[i]=='-')
{
if(b2>k)
return false;
if(b1+b2<=k)
{
b1=b1+b2;b2=; }
else
{
b1=b2;b2=;a++;
if(a>n)
return false;
}
}
}
if(a>n)
return false;
return true;
}
int main()
{
cin>>n;getchar();
getline(cin,ss);
ss+=' ';
int i=,j=ss.size(),k;//[i,j)
while(i<j)
{
k=(i+j)/;
if(isok(k))
j=k;
else
i=k+;
}
if(i==ss.size()&&isok(i))
{cout<<i<<endl;return ;}
cout<<i<<endl;return ;
}
2017-05-06 22:03:30
codeforces 803D Magazine Ad(二分+贪心)的更多相关文章
- CodeForces 803D Magazine Ad
二分. 首先把字符串处理成一个数组,二分答案,判断一下即可. #include <cstdio> #include <cmath> #include <set> # ...
- 【贪心+二分】codeforces D. Magazine Ad
codeforces.com/contest/803/problem/D [题意] 给定一个字符串,字符串里可能有空格和连字符‘-’,空格和连字符的意义是一样的,都表示:能在那个位置把字符串分成两部分 ...
- Codeforces 1132D - Stressful Training - [二分+贪心+优先队列]
题目链接:https://codeforces.com/contest/1132/problem/D 题意: 有 $n$ 个学生,他们的电脑有初始电量 $a[1 \sim n]$,他们的电脑每分钟会耗 ...
- CodeForces - 343C Read Time (二分+贪心)
题意:有N个指针头,M个标记,用这N个针头扫描所有的标记,针头之间互不影响,求扫描完M个标记的最短时间 分析:二分搜答案,mid为时间限制,则只要所有的点在mid秒内被扫描到即可. 对于每个指针,若其 ...
- AC日记——Magazine Ad codeforces 803d
803D - Magazine Ad 思路: 二分答案+贪心: 代码: #include <cstdio> #include <cstring> #include <io ...
- Magazine Ad CodeForces - 803D(二分 + 贪心,第一次写博客)
Magazine Ad The main city magazine offers its readers an opportunity to publish their ads. The forma ...
- Codeforces Gym 100231B Intervals 线段树+二分+贪心
Intervals 题目连接: http://codeforces.com/gym/100231/attachments Description 给你n个区间,告诉你每个区间内都有ci个数 然后你需要 ...
- 2016-2017 ACM-ICPC CHINA-Final Ice Cream Tower 二分+贪心
/** 题目:2016-2017 ACM-ICPC CHINA-Final Ice Cream Tower 链接:http://codeforces.com/gym/101194 题意:给n个木块,堆 ...
- codeforces803D. Magazine Ad
D. Magazine Adtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutput ...
随机推荐
- 使用eclipse创建maven+动态web的项目
windows7操作系统 提前安装java jdk1.8版本+apache-maven-3.3.3+wildfly-10.0.0.Final 1.新建maven项目,到other里面找一下 2.使用默 ...
- odoo开发笔记 -- div标签代替odoo button写法
odoo开发笔记 -- div标签代替odoo button写法 并调用自定义js <footer> <div id="confirm_request_cloud_repo ...
- Jexus~mono中使用StackExchange.redis的问题
在windows平台的vs里,添加包包时,可以选择StackExchange.redis,而如果你的应该程序需要部署到linux的mono环境上,使用这个StackExchange.redis是不行的 ...
- 利用max-height适应多尺寸屏幕的下拉动画
移动设备的特点之一便是屏幕尺寸多种多样,所以我们在制作针对移动设备的动画时必须不同尺寸屏幕的兼容性.比如我们要制作以下动画:红框2为详细内容,默认收起:红框1处为事件响应热区,点击后展开或收起红框2的 ...
- PHP计算连续签到天数以及累计签到天数
代码如下: /** * 统计连续签到天数以及累计签到天数 * @param string $user_long_id 用户ID * @return array 一维数组 */ function sig ...
- Java 容器 & 泛型:一、认识容器
Writer:BYSocket(泥沙砖瓦浆木匠) 微博:BYSocket 豆瓣:BYSocket 容器是Java语言学习中重要的一部分.泥瓦匠我的感觉是刚开始挺难学的,但等你熟悉它,接触多了,也就“顺 ...
- html2canvas关于图片不能正常截取
问题 首先说说遇到了什么问题.首先有这么一个需求.需要前端根据后端传过来数据,动态的生成图片.图片中的文案.背景图片.用户头像全部都是通过后端的接口获取.但是使用 html2canvas 生成的can ...
- NuGet包和功能
Microsoft.AspNetCore.Razor.Tools:提供TagHelper的智能感知提示和代码加粗高亮显示. Microsoft.AspNetCore.Session:管理会话状态的中间 ...
- 彻底弄懂 Unicode 编码
彻底弄懂 Unicode 编码 今天,在学习 Node.js 中的 Buffer 对象时,注意到它的 alloc 和 from 方法会默认用 UTF-8 编码,在数组中每位对应 1 字节的十六进制数. ...
- noteless的博客导航页 所有文章的导航页面
导航 <spring springmvc mybatis maven 项目整合示例系列-导航页> <JAVA 基础知识点拾遗系列 JAVA学习 -1层 导航页> <计 ...