2014百度之星第一题Energy Conversion
Energy Conversion
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 7787 Accepted Submission(s): 1894
Problem Description
魔法师百小度也有遇到难题的时候—— 如今,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这样的魔法文字须要耗费大量的能量和大量的脑力。 过了许久。百小度最终读懂魔法文字的含义:石门里面有一个石盘,魔法师须要通过魔法将这个石盘旋转X度,以使上面的刻纹与天相相应。才干打开石门。
可是,旋转石盘须要N点能量值,而为了解读密文,百小度的能量值仅仅剩M点了!
破坏石门是不可能的,由于那将须要很多其它的能量。
只是,幸运的是,作为魔法师的百小度能够耗费V点能量。使得自己的能量变为如今剩余能量的K倍(魔法师的世界你永远不懂。谁也不知道他是怎么做到的)。
比方。如今百小度有A点能量,那么他能够使自己的能量变为(A-V)*K点(能量在不论什么时候都不能够为负。即:假设A小于V的话,就不能够运行转换)。 然而,在解读密文的过程中。百小度预支了他的智商。所以他如今不知道自己能否够旋转石盘,打开石门。你能帮帮他吗?
Input
输入数据第一行是一个整数T。表示包括T组測试例子; 接下来是T行数据,每行有4个自然数N,M,V,K(字符含义见题目描写叙述); 数据范围: T<=100 N,M,V,K <= 10^8
Output
对于每组数据。请输出最少做几次能量转换才可以有足够的能量点开门。 假设无法做到。请直接输出-1。
Sample Input
4
10 3 1 2
10 2 1 2
10 9 7 3
10 10 10000 0
Sample Output
3
-1
-1
0
题解:
一道比較水的题。依据递推式直接模拟就可以。WA好几次,開始直接分情况推导公式。
#include<iostream>
using namespace std; int main()
{
__int64 n,m,k,v,ans;
int cas;
cin>>cas;
while(cas--)
{
scanf("%I64d%I64d%I64d%I64d",&n,&m,&v,&k);
if(n==m)
ans=0;
__int64 tn=n,tm=m;
__int64 count=0;
while(tn>tm)
{
if(tm<v||(tm-v)*k<=tm)
{
ans=-1;
break;
}
tm=(tm-v)*k;
count++;
}
if(tn<=tm)
ans=count;
else ans=-1;
printf("%I64d\n",ans);
}
return 0;
}
2014百度之星第一题Energy Conversion的更多相关文章
- 2014百度之星资格赛 1001:Energy Conversion(水题,逻辑题)
Energy Conversion Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- 2014年百度之星资格赛第一题Energy Conversion
Problem Description 魔法师百小度也有遇到难题的时候-- 如今.百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这样的魔法文字须要耗费大量的能量和大量的脑力. 过了许久 ...
- 2014年百度之星程序设计大赛 - 资格赛 第一题 Energy Conversion
小记:long long %I64d 代码: #include <iostream> #include <stdio.h> #include <string.h> ...
- 2014百度之星第二题Disk Schedule(双调欧几里得旅行商问题+DP)
Disk Schedule Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) To ...
- 2014百度之星预赛(第二场)——Best Financing
2014百度之星预赛(第二场)--Best Financing Problem Description 小A想通过合理投资银行理財产品达到收益最大化.已知小A在未来一段时间中的收入情况,描写叙述为两个 ...
- ACM-百度之星资格赛之Energy Conversion——hdu4823
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/lx417147512/article/details/26400079 Energy Convers ...
- 2014百度之星资格赛——Disk Schedule
2014百度拥有明星格比赛--Disk Schedule Problem Description 有非常多从磁盘读取数据的需求,包含顺序读取.随机读取. 为了提高效率.须要人为安排磁盘读取. 然而.在 ...
- 2014 百度之星 题解 1004 Labyrinth
Problem Description 度度熊是一仅仅喜欢探险的熊,一次偶然落进了一个m*n矩阵的迷宫,该迷宫仅仅能从矩阵左上角第一个方格開始走,仅仅有走到右上角的第一个格子才算走出迷宫,每一次仅仅能 ...
- 2014百度之星初赛第二场hdu 4831 Scenic Popularity
Scenic Popularity Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
随机推荐
- ReSharper修改命名风格
默认情况下,ReSharper会建议你全局变量命名使用下划线开头,且第一个字母小写.否则,会给你标记出来,如下: 但我个人不喜欢这种风格,一般使用首字母大写且不带下划线,可以通过配置来调整:ReSha ...
- 牛客网-《剑指offer》-跳台阶
题目:http://www.nowcoder.com/practice/8c82a5b80378478f9484d87d1c5f12a4 C++ class Solution { public: in ...
- JVM的结构
参考:http://blog.csdn.net/tonytfjing/article/details/44278233 JVM的结构 一般认为,JVM分为四大部分: 1.类加载器(ClassL ...
- 系统安装-007 CentOS7yum源添加、删除及其yum优化(转)
一.配置阿里云源为主源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bakwget -O /et ...
- 使用Dom4j创建xml文档
我们学习dom4j为的就是使用它来创建XML文档.读取文档等更为方便,下面通过一个实例来展示如何通过dom4j去创建XML文档.展示怎样通过两种方式去创建元素,可以直接通过addElement方法返回 ...
- 7、redis之使用spring集成commons-pool来操作常见数据类型
环境的搭建参见:http://www.cnblogs.com/yangzhilong/p/4729857.html 下面直接贴具体的测试代码: package com.yzl; import java ...
- python之获取微信access_token
# -*- coding: cp936 -*- #python 27 #xiaodeng #获取微信access_token #办法一:将该url直接填写到浏览器地址中可以获得access_token ...
- java 封装02
//Person.java public class Person{ private String name; private int age; private String sex; public ...
- HP ALM
HP ALM 使用经验 使用HP ALM(Application Lifecycle Management)软件有一个多月的时间了,我是从安装,部署,建项,配置,使用,再到问题收集,这个过程过来的.发 ...
- 播布客视频PIT专用播放器MBOO2015
播布客视频,还是挺不错... 很多视频都是pit后缀的,需要用MBOO2015才可以打开... 00.MB2015软件 01.视频样例 02.download 链接: https://pan.baid ...