Description

A family consisting of father bear, mother bear and son bear owns three cars. Father bear can climb into the largest car and he likes it. Also, mother bear can climb into the middle car and she likes it. Moreover, son bear can climb into the smallest car and he likes it. It's known that the largest car is strictly larger than the middle car, and the middle car is strictly larger than the smallest car.

Masha came to test these cars. She could climb into all cars, but she liked only the smallest car.

It's known that a character with size a can climb into some car with size b if and only if a ≤ b, he or she likes it if and only if he can climb into this car and 2a ≥ b.

You are given sizes of bears and Masha. Find out some possible integer non-negative sizes of cars.

Input

You are given four integers V1V2V3Vm(1 ≤ Vi ≤ 100) — sizes of father bear, mother bear, son bear and Masha, respectively. It's guaranteed that V1 > V2 > V3.

Output

Output three integers — sizes of father bear's car, mother bear's car and son bear's car, respectively.

If there are multiple possible solutions, print any.

If there is no solution, print "-1" (without quotes).

Sample Input

Input
50 30 10 10
Output
50 30 10
Input
100 50 10 21
Output
-1

Hint

In first test case all conditions for cars' sizes are satisfied.

In second test case there is no answer, because Masha should be able to climb into smallest car (so size of smallest car in not less than 21), but son bear should like it, so maximum possible size of it is 20.

 
题目意思:熊爸爸,熊妈妈,熊儿子各有一辆车,车的体积是c1,c2,c3,他们一家的体积是v1,v2,v3,Masha的体积是vm。
三辆车严格递减c1>c2>c3 。他们都喜欢各自的车满足条件vi<=ci<=2*vi。Masha三辆车都能进,但是他只喜欢最小的那辆车。
 
解题思路;
这道题很坑很坑,首先我们需要明确一点所给的是各自的体积,而要求的是汽车的体积!有用三层暴力的,其实在多种情况下只求一种,我们完全可以找一种边界情况,熊爸爸,熊妈妈不与Masha产生联系,还要严格递减,那么直接使用最大值就可以。c1=2*v1,c2=2*v2。但到了熊孩子就不一样了,他需要的车和Masha的需求产生了联系,Masha只喜欢最小的车而熊孩子也要最小车,这就使得我们需要对c3做一下判断。如果Masha体积很大,达到vm>2*v3,那么他将不能进入最小的车,不满足情况;但vm<=2*v3时,让c3等于熊孩子和Masha体积重最大的哪一个。这样c1,c2,c3找到了,接下来就是看是否符合条件了。
 我们要对所给的信息进行分析。
1.Masha三辆车都能进,那么一定有vm<=c3。
2.Masha要喜欢最小的那一辆车,那么还要满足2*vm>=c3
3.Masha只喜欢最小的那一辆,那么说明不喜欢最大的和中间大的,那么2*vm<c1,2*vm<c2。

 #include <cstdio>
#include <cstring>
#include <algorithm>
#include <iostream>
using namespace std;
typedef long long int LL;
const LL MAXL(1e6);
int main()
{
int v1,v2,v3,vm;
int c1,c2,c3;
while(~scanf("%d%d%d%d",&v1,&v2,&v3,&vm))
{
c1=*v1;
c2=*v2;
if(vm>*v3)
{
printf("-1\n");
return ;
}
c3=max(v3,vm);
if(vm<=c3&&*vm>=c3&&*vm<c2)
{
printf("%d\n%d\n%d\n",c1,c2,c3);
}
else
{
printf("-1\n");
}
}
return ;
}

Masha and Bears(翻译+思维)的更多相关文章

  1. CodeForces - 907A Masha and Bears

    A. Masha and Bears time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  2. O - Masha and Bears

    Problem description A family consisting of father bear, mother bear and son bear owns three cars. Fa ...

  3. Coloring a Tree(耐心翻译+思维)

    Description You are given a rooted tree with n vertices. The vertices are numbered from 1 to n, the ...

  4. Codeforces Round #524 (Div. 2) C. Masha and two friends(思维+计算几何?)

    传送门 https://www.cnblogs.com/violet-acmer/p/10146350.html 题意: 有一块 n*m 的棋盘,初始,黑白块相间排列,且左下角为白块. 给出两个区间[ ...

  5. Codeforces Round #454 Div. 2 A B C (暂时)

    A. Masha and bears 题意 人的体积为\(V\),车的大小为\(size\),人能钻进车的条件是\(V\leq size\),人对车满意的条件是\(2V\geq size\). 现知道 ...

  6. Codeforces Round #454

    Masha and Bears Tic-Tac-Toe Shockers Seating of Students Party Power Tower Reverses

  7. Codeforces 1304E 1-Trees and Queries (树上距离+思维)(翻译向)

    题意 给你一棵树,q个询问(x,y,a,b,k),每次问你如果在(x,y)加一条边,那么a到b能不能走k步,同一个点可以走多次 思路(翻译题解) 对于一条a到b的最短路径x,可以通过左右横跳的方法把他 ...

  8. Codeforces 643F - Bears and Juice(思维题)

    Codeforces 题目传送门 & 洛谷题目传送门 首先直接暴力枚举显然是不现实的,我们不妨换个角度来处理这个问题,考虑这 \(R_i\) 个瓶子中每一瓶被哪些熊在哪一天喝过. 我们考虑对这 ...

  9. B. Lord of the Values 思维数学建构 附加 英文翻译

    原题链接 Problem - 1523B - Codeforces 题目及部分翻译 While trading on(贸易,利用) his favorite exchange trader Willi ...

随机推荐

  1. K3CLOUD开发-动态表单树形单据体实现银行交易对账

    背景:系统手机开单生成销售单据,通过银行pos机收款,系统收款流水与银行流水可能存在差异,所以通过获取银行接口,获取消费信息自动插入到生产系统数据库,开发对账报表,实现差异汇总! 展示效果如下: 开发 ...

  2. Kafka 部署指南-好久没有更新博客了

    最近到了一家新公司,很多全新技术栈要理解.每天都在看各类 English Offcial Document,我的宗旨是我既然看懂了,就写下来分享,这是第一篇. 基本需求: 1.已有 zookeeper ...

  3. 对于PHP绘图技术的理解

    要使用PHP绘图,就得在php.ini文件中设置一下 找到这个位置 ;extension=php_gd2.dll,然后把前面的分号去掉,重启下apache就可以了 几乎每行代码我都写了注释,方便看懂 ...

  4. mysql数据库用户密码管理

    创建用户:create user 'oracle'@'localhost' identified by 'password'; MySQL 8以上:alter user 'root'@'localho ...

  5. 将变量做为一个对象的key,push新增进一个数组

    var orgnIdListValue=["0","2"]; function arrayField(a,b){ let arrayMes=[]; for(va ...

  6. 4. HTML表单标签

    表单是网页中最常见的元素,也是用户和我们交互的重要手段,在网站中的登录.注册.信息更新这些功能都是依赖表单实现的.在HTML中对于表单提供了一系列的标签,即输入框.下拉框.按钮.文本域,如下是一个最常 ...

  7. mybatis中SQL语句运用总结

    union 连接查询  连接两个表后会过滤掉重复的值 <resultMap id="BaseResultMap" type="com.sprucetec.pay.e ...

  8. laravel5.5源码笔记(一、入口应用的初始化)

    laravel的项目入口文件index.php如下 define('LARAVEL_START', microtime(true)); require __DIR__.'/../vendor/auto ...

  9. PHP操作redis之String(字符串)、List(列表)(一)

    Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key – value 缓存产品有以下三个特点: Redis支持数据的持久 ...

  10. Hadoop系列-HDFS基础

    基本原理 HDFS(Hadoop Distributed File System)是Hadoop的一个基础的分布式文件系统,这个分布式的概念主要体现在两个地方: 数据分块存储在多台主机 数据块采取冗余 ...