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

Source
2014年百度之星程序设计大赛 - 资格赛

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){int T;cin>>T;while(T--){ll n,m,v,k;cin>>n>>m>>v>>k;if(m>=n){cout<<0<<endl;continue;}else if(m<=v){cout<<-1<<endl;continue;}int step=0;ll sum=m;bool flag=true;while(n>sum){sum=(sum-v)*k;//cout<<"***"<<sum<<endl;if(sum<=m){cout<<-1<<endl;flag=false;break;}step++;}if(flag==false) continue;else cout<<step<<endl;}
}

提交的时候只是抱着试试的心态,因为觉得可能会超时了,但没有想到AC了
这题的话其实主要是理清楚逻辑就好,没有什么难的地方

4823.Energy Conversion相关推荐

  1. hdu 4823 Energy Conversion(水题)

    Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  2. 2014年百度之星资格赛第一题Energy Conversion

    2014年百度之星资格赛第一题Energy Conversion Problem Description 魔法师百小度也有遇到难题的时候-- 如今,百小度正在一个古老的石门面前,石门上有一段古老的魔法 ...

  3. 2014百度之星资格赛 1001:Energy Conversion(水题,逻辑题)

    Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  4. 《Energy Conversion and Management》期刊介绍(SCI 1区)

    期刊官方网站 期刊投稿网址 期刊投稿小助手 介绍 Energy Conversion and Management has an open access companion journal Energ ...

  5. 2014百度之星资格赛第一道Energy Conversion

    Problem Description 魔法师百小度也有遇到难题的时候--现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的脑力.过了许久,百小 ...

  6. 2014百度之星资格赛 1001 Energy Conversion(递归)题意不解释

    Energy Conversion Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  7. 2014 百度之星 资格赛 第一题 Energy Conversion 解题思路

    本次比赛的资格赛似乎比以往来的要稍微难一点,但是整体来说,每道题想到解题思路都不是很难,但是在具体的代码编写过程中需要注意的细节尤为重要.下面先将第一题的题目贴出: [Time Limit: 2000 ...

  8. 2014年百度之星程序设计大赛 - 资格赛 第一题 Energy Conversion

    Problem Description   魔法师百小度也有遇到难题的时候-- 现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的脑力. 过了许 ...

  9. 2014 百度之星题解1001 - Energy Conversion

    Problem Description 魔法师百小度也有遇到难题的时候--现在,百小度正在一个古老的石门面前,石门上有一段古老的魔法文字,读懂这种魔法文字需要耗费大量的能量和大量的脑力.过了许久,百小 ...

最新文章

  1. Bitsocket——BCH实时API,为BCH带来无限可能
  2. boost之ThreadPool
  3. MY Fist 51CTO BLOG
  4. 目标检测(Object Detection)资料汇总
  5. 编译x86架构的openwrt系统,让笔记本从u盘启动openwrt
  6. 7、oracle下的序列
  7. MapStruct:将数据从一个bean传输到另一个bean
  8. java创建目录时带权限_java – 无法在外部存储中创建目录,尽管权限显然设置正确...
  9. mysql 完整性概念_mysql基础知识
  10. 实现CTF智能合约题目的环境部署
  11. 《JSP实用教程(第2版)/耿祥义》错误之tomcat虚拟服务目录
  12. Linux与网络服务(零)从零开始聊聊Linux相关概念(科普向)
  13. 有监督学习、无监督学习和半监督学习的分类
  14. sin(a-b)=sina*cosb-sinb*cosa的推导过程
  15. 【原创】带下划线单选菜单栏-标签Tab
  16. matlab中rand函数
  17. Drools-决策表
  18. VUE Echarts世界地图 中文名称显示国家
  19. jdk8在win10的安装,添加JAVA_HOME环境变量
  20. 自己动手写操作系统第三章pmtest7源码解析——检测系统内存

热门文章

  1. 再见只是陌生人?聊一聊数据可视化工具的运营模式
  2. 软件测试最最最基础,你需要知道的1234点
  3. Jpeg-9e源码编译(Win10+VS2019)
  4. Linux系统刻盘失败,怎么刻录linux系统盘
  5. 关于cookie的设置
  6. 从普惠金融到金融科技 凡普金科杨帆眼中的变与不变
  7. Java ArrayList使用总结(一)
  8. java实现邮箱群发功能
  9. QT+百度AI 手势识别
  10. java教程哪里好_最好的Java教程是什么?