(HDU 5802)2016 Multi-University Training Contest 6 Windows 10 (贪心)
来源:互联网 发布:淘宝店取什么名字好 编辑:程序博客网 时间:2024/05/24 04:52
思路
为什么贪心题/搜索题也可以这么难TAT
对于给定的n,m,如果
对于
答案会出现在一直往下减再往上加和一直往下减休息几次再减之中
- 如果
cur>tar 的情况,可以一直往下减 - 休息一下的次数可以用来抵消往上加的次数
- 题目说不能减到0以下,是指如果减了会小于0,那么音量变成0(不是说不能减)
- 任何时候执行加法效果都是一样的
代码
#include <bits/stdc++.h>#define mem(a,b) memset(a,b,sizeof(a))#define rep(i,a,b) for(int i=a;i<b;i++)#define debug(a) printf("a =: %d\n",a);const int INF=0x3f3f3f3f;const int maxn=1e6+50;const int Mod=1000000007;const double PI=acos(-1);typedef long long ll;using namespace std;int main(){ #ifndef ONLINE_JUDGE freopen("in.txt","r",stdin); #endif int T,cur,tar; scanf("%d",&T); while(T--){ scanf("%d %d",&cur,&tar); if (cur<=tar) printf("%d\n", tar-cur); else{ int ans=INF,waitCnt=0,downCnt=0; int x=1; while(cur>=tar){ // cout<<cur<<" "<<tar<<endl; downCnt++; cur-=x; x<<=1; if (cur<=tar){ if (tar-cur<=waitCnt){ ans=min(ans,downCnt+waitCnt); }else{ ans=min(ans,downCnt+max(tar-max(cur,0),waitCnt)); //wait waitCnt++; x>>=1; cur+=x; x=1; downCnt--; } } } printf("%d\n",ans); } } return 0;}
0 0
- hdu 5802 Windows 10(2016 Multi-University Training Contest 6——贪心+dfs)
- (HDU 5802)2016 Multi-University Training Contest 6 Windows 10 (贪心)
- 贪心——Windows10 ( HDU 5802 ) ( 2016 Multi-University Training Contest 6 1010 )
- hdu 5802 2016 Multi-University Training Contest 6(dfs)
- 2016 Multi-University Training Contest 6
- 2016 Multi-University Training Contest 6
- 2016 Multi-University Training Contest 10
- 2016 Multi-University Training Contest 10
- 贪心——HDU 5813 ( 2016 Multi-University Training Contest 7 1005 )
- (HDU 5813)2016 Multi-University Training Contest 7 Elegant Construction (贪心、图论)
- 贪心 ( HDU 5821 )——2016 Multi-University Training Contest 8 1001
- hdu 5821 Ball(2016 Multi-University Training Contest 8——贪心+排序)
- 2017 Multi-University Training Contest 10 1008 Monkeys HDU 6178 (贪心 读入挂fread)
- 2017 Multi-University Training Contest 10 1010 Schedule HDU 6180 (贪心)
- 2017 Multi-University Training Contest 10 1010 Schedule && HDU 6180 (贪心)
- 2017 Multi-University Training Contest 10 1008 Monkeys&& HDU 6178 (贪心+超级读入挂fread)
- 2017 Multi-University Training Contest 10 && HDU 6178 Monkeys 【贪心||树形DP】
- 2015 Multi-University Training Contest 6_1008_Hiking(贪心)
- 杭电ACM 1234开门人和关门人
- 链式队列的基本操作实现c++
- CodeForces - 703C Chris and Road
- Online Judge for ACM-ICPC etc.
- news_found_msg
- (HDU 5802)2016 Multi-University Training Contest 6 Windows 10 (贪心)
- 数据结构上机测试2-1:单链表操作B
- hdu Keep In Touch
- 优先队列
- 数据结构实验之栈七:出栈序列判定
- 机器学习中的规则化之L0、L1和L2范数
- NYOJ-14 会场安排问题
- 第三章 3.25 3.26
- 解析web服务器日志文件