Comet OJ 夏季欢乐赛 Gree的心房

题目传送门

题目描述

据说每一个走进Gree哥哥心房的小姑娘都没有能够再走出来……

我们将Gree哥哥的心房抽象成一个n \times mn×m的地图,初始所有点均为空。当小姑娘走入他的心房时(此时小姑娘的位置为 (1,1)(1,1) 点),他会将kk 个 1 \times 11×1 障碍物放入地图来阻止小姑娘的行动,每个位置最多只能放置一个障碍物(即不能叠加放置)。但由于Gree哥哥被小姑娘的美貌所捕获,并没有一套很好的策略去放置这些障碍物,于是就随机放置这些障碍物。

在Gree随机地把所有障碍物放置好之后,小姑娘要从地图的左上角 (1,1)(1,1) 走到右下角 (n,m)(n,m)。(起点和终点不能放置障碍物)

小姑娘每一步可以往上下左右的任意一个方向移动一个单位,在所有的障碍物放置方案中,小姑娘从左上角走到右下角需要的最少步数是多少?(小姑娘会尽量走最短的路线)

如果没有一个合理的放置方案,或无论怎样放置障碍物小姑娘都无法到达右下角,输出 -1−1.

输入描述

输入包含三个正整数 n,m,kn,m,k。 (1 \le n, m, k \le 10^{5}1≤n,m,k≤105)

输出描述

输出一个整数表示答案。

样例输入 1

3 3 2

样例输出 1

4

提示

若用 0 表示空地,1表示此地被放置了障碍物。则其中的一种放置方案为:

0 0 1

1 0 0

0 0 0

在这种情况下,从左上角到右下角的步数为 4。且这种方案是小姐姐需要步数最少的方案。(当然也有其他方案也可以让小姐姐4步就能到达终点)

是这样,我们发现,如果从左上跑到右下,在最理想情况下,只需要跑n+m-2步(减去的2是起点和终点)。

题目没有给怎么放,只是给了障碍物的个数,那么我们完全可以默认把障碍物按照最理想的方案来放。

然后我们只需要判断一下,k的个数是否足够把这条最优路线堵死。

是的话就没商量输出-1.

不是的话就直接输出n+m-2。

最后我们发现这道题水的要命。

然后得出AC代码,不开long long 会WA一个点。

#include<cstdio>
using namespace std;
typedef long long ll;
ll n,m,k;
int main()
{
scanf("%lld%lld%lld",&n,&m,&k);
if(k>(n-1)*(m-1))
{
printf("-1");
return 0;
}
else
{
printf("%d",n+m-2);
return 0;
}
}

Comet OJ 夏季欢乐赛 Gree的心房的更多相关文章

  1. Comet OJ 夏季欢乐赛 篮球校赛

    Comet OJ 夏季欢乐赛 篮球校赛 题目传送门 题目描述 JWJU注重培养学生的"唱,跳,rap,篮球"能力.于是每年JWJU都会举办篮球校赛,来给同学们一个切磋篮球技术的平台 ...

  2. Comet OJ 夏季欢乐赛 分配学号

    Comet OJ 夏季欢乐赛 H 分配学号 题目传送门 题目描述 今天,是JWJU给同学们分配学号的一天!为了让大家尽可能的得到自己想要的学号,鸡尾酒让大家先从 [1,10^{18}][1,1018] ...

  3. Comet OJ CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)

    Preface 在一个月黑风高的夜晚我这个蒟蒻正踌躇着打什么比赛好 是继续做一场AGC,还是去刷一场CF 然后,一道金光闪过(滑稽),我们的红太阳bzt给我指明了方向: 你太菜了,我知道有一场很水的比 ...

  4. Comet OJ 夏季欢乐赛 烤面包片

    烤面包片 https://cometoj.com/contest/59/problem/C?problem_id=2698 题目描述 鸡尾酒最喜欢吃东北的烤面包片了.每次到东北地区的区域赛或者是秦皇岛 ...

  5. Comet OJ 夏季欢乐赛 完全k叉树

    完全k叉树 https://cometoj.com/contest/59/problem/A?problem_id=2712 题目描述 欢迎报考JWJU!这里有丰富的社团活动,比如为梦想奋斗的ACM集 ...

  6. Comet OJ 夏季欢乐赛 距离产生美

    距离产生美 https://cometoj.com/contest/59/problem/B?problem_id=2680 题目描述 JWJU放暑假了,于是鸡尾酒就和女朋友璇璇一起出去玩.但是外面太 ...

  7. CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)D

    题面 一开始想到一个 O(N^2) 做法,先把x排序,然后顺次枚举x最大的点,看向前最多可以保留多少点 (也就是先不管正方形的上下长度限制,先考虑左右的限制).然后再对这些点做一遍类似的..(等等这么 ...

  8. CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)F

    题面 F比较友善(相较于E),我们发现如果i和j是满足条件的两个下标,那么: a[i]-2*b[i] + a[j]-2*b[j] >=0 或者 b[i]-2*a[i] + b[j]-2*a[j] ...

  9. CCPC-Wannafly & Comet OJ 夏季欢乐赛(2019)E

    题面 这个题暴好啊,考了很多东西. 首先设f(x)为离终点还有x步要走的期望步数,我们可以发现 : 1.x>=k时,x可以转移到的点的下标都<x. 2.x<k时,则可能走回到x或者下 ...

随机推荐

  1. ElasticSearch使用RestHighLevelClient进行搜索查询

    Elasticsearch Java API有四类client连接方式:TransportClient.  RestClient .Jest. Spring_Data_Elasticsearch.其中 ...

  2. ASP.NET Core2使用Autofac实现IOC依赖注入竟然能如此的优雅简便(转载)

    原文地址:https://www.cnblogs.com/Andre/p/9604759.html 初识ASP.NET Core的小伙伴一定会发现,其几乎所有的项目依赖都是通过依赖注入方式进行链式串通 ...

  3. JavaScript 正则表达式匹配成功后的返回结果

    原文地址:https://blog.csdn.net/liupeifeng3514/article/details/79005604 使用正则表达式EDIT 正则表达式可以被用于RegExp的exec ...

  4. 利用mysql的LOAD DATA INFILE的功能读取客户端文件

    前言:今天在浏览某知论坛时,看到某大佬在渗透过程中使用伪造的MySQL服务端读取客户端文件,此大佬在利用过程中描述得不是很详细,作为小白的我看不懂啊,由此产生了此篇文章. 某大佬文章:https:// ...

  5. DFRobot模块物联网演示项目整合

    简介 本文是此次物联网项目的终结篇.本文将演示如何整合之前的文章中的模块和代码,来简单的完成一个物联网项目.最终的实现效果是:利用Iphone手机上的MQTTool App,来获取DHT11的温湿度数 ...

  6. 024 如何让html引用公共的头部和尾部(多个html文件公用一个header.html和footer.html)

    前端静态html页面,封装公共的头文件(header:顶部页眉,顶部导航栏等部分)和尾部文件(footer:CopyRight.友情链接等部分) 当前方法:通过load()函数,引入公共头部和尾部文件 ...

  7. scala中val和var的区别

    1:内容是否可变:val修饰的是不可变的,var修饰是可变的 2:val修饰的变量在编译后类似于java中的中的变量被final修饰 3:lazy修饰符可以修饰变量,但是这个变量必须是val修饰的 p ...

  8. 费劲周折的Haskell开发环境搭建过程

    大概倒腾了一周才搭建好Haskell的开发环境,遇到了很多莫名其妙的问题. 首先,Haskell实在是够冷门,中文网站上的信息实在有限.仅有的一些安装教程分享都感觉不大靠谱,所以我还是直接去外网找吧. ...

  9. 开发--Deepin系统安装

    开发|Deepin系统安装 在18小时前,我刚刚萌生了一个将我的笔记本换成linux系统.在18小时后的现在,在我各种试错之后,笔记本已经开始跑起linux了.在科技的时代,只要是想法,都可以试一试. ...

  10. 【开发笔记】- AbstractRoutingDataSource动态数据源切换,AOP实现动态数据源切换

    AbstractRoutingDataSource动态数据源切换 上周末,室友通宵达旦的敲代码处理他的多数据源的问题,搞的非常的紧张,也和我聊了聊天,大概的了解了他的业务的需求.一般的情况下我们都是使 ...