codeforces 864C
来源:互联网 发布:淘宝双十一c店报名条件 编辑:程序博客网 时间:2024/06/04 18:31
http://codeforces.com/problemset/problem/864/C
给出起点与终点的距离,在这之中有一个加油站,汽车油箱有限,问最少需要加油多少次,能够在起点与终点之间来回K次,按照题意模拟,但是需要很多细节,主要思路就是每次判断到达最远的点之后反向能不能到加油站,如果能则在去的路上就不需要加油了。
#include<bits/stdc++.h>using namespace std;int main(){long long int a,b,f,k;while(cin>>a>>b>>f>>k){bool dir=0;int bb=b;int ans=0;int tim=0;while(1){if(ans==k)break;if(!dir){dir=!dir;if(ans==k-1){if(b>=a){ans++;continue;}else if(b>=f&&bb>=a-f){tim++;ans++;continue;}else {break;}}if(b>=a+a-f){b-=a;ans++;}else if(b>=f&&bb>=a-f){b=bb-(a-f);tim++;ans++;}else{break;}}else{dir=!dir;if(ans==k-1){if(b>=a){ans++;continue;}else if(b>=a-f&&bb>=f){tim++;ans++;continue;}else {break;}}if(b>=a+f){b-=a;ans++;}else if(b>=a-f&&bb>=f){b=bb-f;tim++;ans++;}else break; } }if(ans==k){cout<<tim<<endl;}else cout<<"-1"<<endl;}return 0;}
阅读全文
0 0
- codeforces 864C 模拟
- 【Codeforces 864 C. Bus】
- codeforces 864C
- codeforces 864C
- CodeForces 864C Bus
- Codeforces 864 C Bus
- Codeforces 864C Bus(模拟水题)
- codeforces 864C Marco and GCD Sequence
- Codeforces-340-C(c++)
- Codeforces-507-C(c++)
- CodeForces 731C C
- CodeForces-612C C
- Codeforces Round #436 (Div. 2)C. Bus codeforces 864C. Bus
- CODEFORCES 265C CODEFORCES, 265C
- codeforces #78 div2 C
- Codeforces 117C Cycle
- CodeForces 209C
- CodeForces 156C Cipher
- 【bzoj1370】【团伙】原来并查集还能这么用?!
- Linux 基础知识(1)—学习路线
- 多线程-生产者消费者lock锁
- solr服务快速搭建、配置中文分词、数据导入即solrj增删改查
- jquery().offset()、e.offsetX、e.clientX
- codeforces 864C
- JavaScript --02 语法
- CSS3 三维立体文字及旋转特效
- codeforces 864D
- poj3667 Hotel (线段树+区间合并)
- jsonp 的原理与实现
- ssh用ajax提交表单到后台,后台返回success,不跳转到在struts.xml中设置的页面
- AT绑定句柄无效和拒绝访问
- Linux 硬盘挂载及设置交换分区swap