JZYZOJ1140 飞船控制站
p1140
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cstdlib>
//#include<cmath>
using namespace std;
inline int read(){
int bj=;char ch=getchar();
while(ch<''||ch>''){
if(ch=='-')bj=-;
ch=getchar();
}
int ret=;
while(ch>=''&&ch<=''){ret=ret*+ch-'';ch=getchar();}
return ret*bj;
}
int n,m,k,map[][]={},a[]={};
bool vis[]={};
void init(){
n=read();m=read();k=read();
for(int i=;i<=n;i++){
for(int j=;j<=*m;j++){
char ch;
cin>>ch;
map[i][j]=ch-'';
}
}
}
void orbit(int idx){
a[]=;
for(int i=;i<=n;i++)a[++a[]]=map[i][idx];
for(int i=n;i;i--)a[++a[]]=map[i][idx+m];
}
int L(int x,int R) {
int pos=x-R,lim=*n;
pos+=lim;
if(pos%lim==)return lim;
return pos%lim;
}
int R(int x,int R) {
int pos=x+R,lim=*n;
if(pos%lim==)return lim;
return pos%lim;
}
void cover(int x,int r) {
for(int i=;i<=r;i++)vis[L(x,i)]=vis[R(x,i)]=;
}
bool check(int r) {
memset(vis,,sizeof(vis));
int st=(n+)/,ans=;
cover(st,r);
int pos=R(st,r+);
while(pos!=st){
//if(r==2)cout<<pos<<"<----\n";
if(vis[pos]){
pos=R(pos,);
continue;
}
bool fl=;
for(int j=r;j;j--){
if(a[R(pos,j)]==){
fl=;
ans++;
cover(R(pos,j),r);
break;
}
}
if(fl)continue;
if(a[pos]==){
fl=;
ans++;
cover(pos,r);
}
if(fl)continue;
for(int j=;j<=r;j++){
if(a[L(pos,j)]==){
fl=;
ans++;
cover(L(pos,j),r);
break;
}
}
if(fl)continue;
return ;
}
return ans<=k;
}
void Binary_Search(){
int l=,r=*n+,ans=;
while(l<=r){
int mid=(l+r)>>;
if(check(mid)){
ans=mid;
r=mid-;
}
else l=mid+;
}
printf("%d\n",ans);
}
void work(){
for(int i=;i<=m;i++){
orbit(i);
Binary_Search();
}
}
int main(){
init();
work();
return ;
}
JZYZOJ1140 飞船控制站的更多相关文章
- 神舟飞船上的计算机使用什么操作系统,为什么是自研发不是 Linux?
中国航天用的SpaceOS主要内容是仿造美国风河系统公司的VxWorks653(653是产品名,并非版本号). 先解释为什么用这个系统不用Linux: 航天器的内存和CPU都非常弱,弱到什么程度呢:天 ...
- cocos2d 游戏开发:Cocos2d v3 "hello world"+显示飞船
V3 RC4 版本号图片 显示一个飞船 将Chapter1中 SpaceCargoShip.png 文件 加入到项目里面. 代码在 init : CCSprite *spaceCargoShip = ...
- NSOJ 飞船汇合(经典)
一支分散的飞船舰队,需要汇合到主舰,但是这种飞船在太空中飞行的耗油与质量没有关系,只与发动机打开的时间有关系,为了节省油量,指挥官通知,汇合途中,多台飞船可以串成串飞行,这样只需启动一台发动机,由于安 ...
- NASA: SpaceX的猎鹰9号火箭将龙飞船发射到国际空间站
At 5:42 a.m. EDT Friday, June 29, 2018, SpaceX’s Dragon spacecraft lifts off on a Falcon 9 rocket fr ...
- 阿波罗11号登月飞船电脑控制系统源码(AGC)
阿波罗11号登月飞船电脑控制系统源码(AGC) http://download.csdn.net/detail/downiis6/9574926 down url: https://github.co ...
- (转)神舟飞船上的计算机使用什么操作系统,为什么是自研发不是 Linux?
中国航天用的SpaceOS主要内容是仿造美国风河系统公司的VxWorks653(653是产品名,并非版本号).先解释为什么用这个系统不用Linux:航天器的内存和CPU都非常弱,弱到什么程度呢:天宫一 ...
- 太空飞船(spaceship)
太空飞船(spaceship) 题目描述 21XX年,秋. 小诚是THU(Tomorrow Happy University)航天学院船舶设计系本科四年级的学生.为了顺利毕业,小诚仔细阅读了这几年被引 ...
- php7新增的两个操作符---null合并及飞船操作符
<?php //null合并操作符?? //(太空)飞船操作符<=> //The operator returns 0 if both operands are equal, 1 i ...
- python 小游戏 “外星飞船入侵”
Project Title 项目名称 “外星飞船入侵”, git地址:https://github.com/lilinyu861/Alien-Invasion 效果图: 参考: https://blo ...
随机推荐
- UNIX环境高级编程 第13章 守护进程
守护进程daemon是一种生存周期很长的进程.它们通常在系统引导时启动,在系统关闭时终止.守护进程是没有终端的,它们一直在后台运行. 守护进程的特征 在Linux系统中,可以通过命令 ps -efj ...
- SQL Server 问题之 排序规则(collation)冲突
一.写在前面 最近公司进行开发环境升级,数据库也准备了一个新的服务器,一切准备好后开始数据迁移,采取的方式为对现有Database(现有服务器Windows Server 2003 + SQL Ser ...
- 关于app的cpu占用率想到的几个问题
1.top 命令获取的cpu是手机瞬间的cpu 2.dumpsys获取的是一段时间cpu的平均值?那么这段时间是指哪段,从哪开始到什么时候结束? 3.如果想测试app某操作下的cpu占用情况时候.应该 ...
- Codeforces Round #504 D. Array Restoration
Codeforces Round #504 D. Array Restoration 题目描述:有一个长度为\(n\)的序列\(a\),有\(q\)次操作,第\(i\)次选择一个区间,将区间里的数全部 ...
- vue系列之项目优化
webpack中的Code Splitting Code Splitting是什么以及为什么 在以前,为了减少HTTP请求,通常地,我们会把所有的代码都打包成一个单独的JS文件,但是,如果这个文件体积 ...
- 移动端默认meta标签
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><met ...
- 洛谷P2194HXY烧情侣
传送门啦 这个题可以说是tarjan强连通分量的裸题,但需要维护每个强连通分量的最小值,所以做法就很明确了. 我们先明确几个数组的意思: 1.首先是tarjan缩点中的几个数组: dfn[i]:i点的 ...
- Ninject中如果在抽象类中使用了属性注入,则属性必须设置为protected或public
Ninject中如果在抽象类中使用了属性注入,则属性必须设置为protected或public 不能使用private,否则无法注入成功,会报null异常
- GitHub在线创建文件夹
点击New files按钮,然后输入含有slash字符(“/”)的文件名即可.也就是建立一个含有路径(目录)的文件,即会自动产生新文件夹. 点击Upload files按钮,然后直接把本地的文件夹(内 ...
- Robots.txt 不让搜索引擎收录网站的方法
有没有担心过自己的隐私会在强大的搜索引擎面前无所遁形?想象一下,如果要向世界上所有的人公开你的私人日记,你能接受吗?的确是很矛盾的问题,站长们大都忧虑“如何让搜索引擎收录的我的网站?”,而我们还是要研 ...