[补档]Cube
Cube
题目
给你一个n×m的棋盘,有一个1×1×2的长方体竖直放在(1,1)上,你可以将其在棋盘上滚动,你的目标是让其竖直放在(n,m)上,问至少需要多少次操作。(放倒、竖直、翻滚)INPUT
一行,两个整数n,m (n<=m)OUTPUT
需要最少时间逃脱密室。若无解输出impossible。SAMPLE
INPUT1
1 1OUTPUT1
0INPUT2
2 4OUTPUT2
3INPUT3
4 7OUTPUT3
6
解题报告
ans=4+((m-1)/3)×2+(m-1)%3
然而我们需要注意3×3的情况,答案为8,我就不证了(不会证),其实自己画个图,翻两下就可以了
ans=((n-1)/3+(m-1)/3+(n-1)%3+(m-1)%3)×2
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int n,m;
int ans();
int main(){
scanf("%d%d",&n,&m);
if(n==||n==){
if((m-)%){
puts("impossible");
return ;
}
printf("%d",(((m-)/)<<)+n-);
return ;
}
if(n==){
if(m==){
puts("");
return ;
}
ans=;
ans+=((m-)/)<<;
if((m-)%)
ans+=+(m-)%;
printf("%d",ans);
return ;
}
ans+=((n-)/)<<;//cout<<ans<<endl;
ans+=(n-)%;//cout<<ans<<endl;
ans+=((m-)/)<<;//cout<<ans<<endl;
ans+=(m-)%;//cout<<ans<<endl;
printf("%d",ans);
}
[补档]Cube的更多相关文章
- STL 补档
STL 补档 1.vector 作用:它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据. vector在C++标准模板库中的部分内容,它是 ...
- 图论补档——KM算法+稳定婚姻问题
突然发现考前复习图论的时候直接把 KM 和 稳定婚姻 给跳了--emmm 结果现在刷训练指南就疯狂补档.QAQ. KM算法--二分图最大带权匹配 提出问题 (不严谨定义,理解即可) 二分图 定义:将点 ...
- [补档] 大假期集训Part.1
新博客搭起来先补一发档... 那就从大假期集训第一部分说起好了QwQ 自己还是太菜掉回了2016级水平 day1: day1的时候来得有点晚(毕竟准高一)然后进机房发现早就开考了还没有给我题面于是搞了 ...
- 软件安装配置笔记(三)——ArcGIS系列产品安装与配置(补档)(附数据库连接及数据导入)
在前两篇安装配置笔记之后,就忘记把其他安装配置笔记迁移过来了,真是失误失误!趁现在其他文档需要赶紧补上. 目录: 一.ArcMap 二.ArcMap连接数据库并导入数据 三.Arcgis Pro 四. ...
- 补档 Codeblocks下的文件标题栏(标签)显示方法
可能在以下链接也能看到这篇文档 我知道很多人都不知道这个到底叫啥,还不如直接一点: 文件标题栏 就是如下的效果. 解决办法: 在左上角第三个view下,打开后取消Hide editor tabs 选项 ...
- Leave It Behind and Carry On ---- 高一下期末考反思 [补档]
背景 这个学期的前\(\frac{3}{4}\), 我都是在停课集训中度过的, 先是GDKOI, 再是北京集训, 最后是GDOI, 结果GDOI还没进day3就滚粗了. 学校的内容是考完GDOI后回学 ...
- Java 高效编程(Effective Java)中文第三版(补档)
来源:sjsdfg/effective-java-3rd-chinese <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过, ...
- [补档]暑假集训D8总结
%dalao 今天有两位大佬来讲课,meaty来讲了Catalan(本来说好的莫比乌斯反演呢),聪聪来讲Splay呢 至于听课笔记= =,没来得及记= = 不过好不想上树啊,上了树就下不来了 考试 仍 ...
- [补档]从OI学麻将
背景 作为一名川娃子,怎么能不懂麻将呢= = T1 さきなに~~ [咲 -Saki-] 天才麻将少女什么编 题目 二十一世纪,世界上的麻将竞技人数超过一亿,日本每年也有大规模的全国大赛来对麻将选手进行 ...
随机推荐
- Kafka官方文档翻译——设计
下面是博主的公众号,后续会发布和讨论一系列分布式消息队列相关的内容,欢迎关注. ------------------------------------------------------------ ...
- svn客户端的使用
1 SVN概述 SVN客户端应用集成在右键菜单中: svn服务器有2种运行方式:独立服务器和借助apache运行.两种方式各有利弊,用户可以自行选择: SVN是Subversion的简称,是一个开放源 ...
- hibernate查询部分字段转换成实体bean
//hibernate查询部分字段转换成实体bean /** * 查询线路信息 */ @Override public List<Line> getSimpleLineListByTj(M ...
- 如何使用Node.js编写命令工具——以vue-cli为例
vue-cli全局安装之后,提供了vue命令和vue init.vue list.vue build三个子命令,通过命令可以搭建基于vue.js的脚手架项目.本文简单介绍一下这些命令是如何实现的. v ...
- java注解编程
- java基础(9) - 泛型解析
泛型 定义简单的泛型类 泛型方法 /** * 1.定义一个泛型类 * 在类名后添加类的泛型参数 <T> * 泛型类里面的所有T会根据创建泛型类时传入的参数确定类型 * 2.定义泛型方法 * ...
- NPOI 表头、页眉页脚重复设置
NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. 使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 ...
- SQLite的总结与在C#的使用
这几天接触了一下SQLite,算是有点收获吧,因此总结一下. SQLite简介: SQLite是用C语言编写的数据库引擎,可以运行在Linux.Windows.Mac平台上. SQLite安装简单,下 ...
- C/C++中const关键字的用法及其与宏定义的比较
1.const关键字的性质 简单来说:const关键字修饰的变量具有常属性. 即它所修饰的变量不能被修改. 2.修饰局部变量 ; ; 这两种写法是等价的,都是表示变量的值不能被改变,需要注意的是,用c ...
- Argparse4j
argparse4j 是 Python argparse 命令行解析器的 Java 语言移植版.这个要比spring AspectJ 更简单,更方便实现. <dependency> < ...