hdu 5417 Victor and Machine
来源:互联网 发布:淘宝网新生活化妆品 编辑:程序博客网 时间:2024/05/29 18:12
题目:
Victor有一个机器,这个机器每次开启的瞬间会弹出一个小球,之后每隔ww秒会弹出一个小球。因为机器不是很完善,该机器每开启xx秒就得关闭yy秒进行调整,在机器关闭的瞬间可能会有小球弹出,关闭之后一直到下一次开启之前都不会有小球弹出。00时刻,机器第一次开启,Victor想要知道第nn个小球弹出的时刻,你能够告诉他吗?
分析:
当x<w时,显然只有在每次机器开启的时刻,才会弹出一个球,0时刻已经弹出一个,那么第n个球弹出的时刻为:(n-1)*(x+y)
当x>=w时,每个周期(开启到关闭机器持续时间x+y)弹出的球个数为1+x/w个,设为p=1+x/w,令T=n/p,如果p能够整除n,那么将会在第T个周期弹出第n个球,弹出的时刻为(T-1)*(x+y)+x/w*w;若p不能整除n,那么将在第T+1个周期弹出第n个球,弹出时刻为T*(x+y)+(n-1)%p*w。注意后面是(n-1)%p*w,因为除去在0时刻弹出的那个球,弹出的球实际上是第n-1个。
#include<iostream>#include<cstdio>#include<cstring>using namespace std;int main(){ int x,y,w,n; while(~scanf("%d%d%d%d",&x,&y,&w,&n)) { int ans; if(x>=w) { int p=1+x/w; if(n%p==0) ans=(n/p-1)*(x+y)+w*(x/w); else ans=n/p*(x+y)+(n-1)%p*w; }else ans=(n-1)*(x+y); printf("%d\n",ans); } return 0;}
0 0
- hdu 5417 Victor and Machine
- hdu 5417 Victor and Machine
- HDU 5417 Victor and Machine
- HDU-5417Victor and Machine
- hdu 5417 Victor and Machine
- hdu 5417 Victor and Machine
- hdu 5417 Victor and Machine
- hdu 5417 Victor and Machine 思考题
- hdu 5417 Victor and Machine(简单数学题)
- hdu 5417 Victor and Machine(模拟)
- HDU 5417-Victor and Machine(水题)
- hdu 5417 Victor and Machine 模拟
- hdu 5417 Victor and Machine(水)
- HDOJ 5417 Victor and Machine
- HDU 5417 Victor and Machine(模拟||递推)
- HDOJ 5417 Victor and Machine 水
- HDOJ 5417 Victor and Machine(模拟)
- Victor and Machine
- 多态性和虚函数
- openfire,XMPP,smack,android下离线消息的接收
- git 运用技巧
- 面向对象方法-------RUP
- Shell脚本——批量安装Apk
- hdu 5417 Victor and Machine
- charles抓接口步骤
- 寻找第K大的数
- Maximum Depth of Binary Tree
- [CQOI2013]棋盘游戏
- 黑马程序员--Java基础学习(集合框架)第十四天
- Android本地数据存储: Reservoir
- C语言的取模结果
- bash基础-其他配置文件和登录信息