Educational Codeforces Round 25 C Multi-judge Solving 贪心
2017-07-18 07:49
302 查看
CF传送门
题意:
1. 某人计划在CF上刷n道题,他最初已掌握的题目难度为k
2. 如果一道新题的难度小于两倍的k,就表示这道题可以直接在CF上刷过去
3. 否则他就需要到其他OJ上刷题目来提高自己掌握的题目难度以便在CF上继续刷题
4. 无论在CF还是其他OJ上,刷难度都是以上规则
5. 问在其他OJ上练经验题数
题解:
1. 贪心思想,尽量在已有的基础上去刷题
2. 先排序,把简单题直接刷掉(途中可能更新k值)。加入当前k=3,你刷一道a=5的题,这在CF上可以刷过去,并且k更新为5
3. 如果在CF上刷不动了,那换到其他OJ上刷怪连经验(刷难度),其实k值更新规则一样,所以就循环刷难度直到能重返CF为止
以下是我的AC代码:
题意:
1. 某人计划在CF上刷n道题,他最初已掌握的题目难度为k
2. 如果一道新题的难度小于两倍的k,就表示这道题可以直接在CF上刷过去
3. 否则他就需要到其他OJ上刷题目来提高自己掌握的题目难度以便在CF上继续刷题
4. 无论在CF还是其他OJ上,刷难度都是以上规则
5. 问在其他OJ上练经验题数
题解:
1. 贪心思想,尽量在已有的基础上去刷题
2. 先排序,把简单题直接刷掉(途中可能更新k值)。加入当前k=3,你刷一道a=5的题,这在CF上可以刷过去,并且k更新为5
3. 如果在CF上刷不动了,那换到其他OJ上刷怪连经验(刷难度),其实k值更新规则一样,所以就循环刷难度直到能重返CF为止
以下是我的AC代码:
#include <iostream> #include <algorithm> using namespace std; const int maxn=1000+5; int a[maxn]; int main() { int n,k,sum=0; cin >> n >> k; for(int i=0;i<n;i++) cin >> a[i]; sort(a,a+n); //排序后计算方便 for(int i=0;i<n;i++){ if(k*2<a[i]){ while(k*2<a[i]){ k=k*2; //掌握的难度翻倍 sum++; //需要在其他OJ上的写题数+1 } k=max(k,a[i]); //更新当前OJ上已做出的最高难度 } k=max(k,a[i]); //更新当前OJ上已做出的最高难度 } cout << sum << endl; return 0; }
相关文章推荐
- Educational Codeforces Round 25 C. Multi-judge Solving
- cf Educational Codeforces Round 25 C. Multi-judge Solving
- Educational Codeforces Round 25 D Suitable Replacement 贪心
- Educational Codeforces Round 34 (Rated for Div. 2)B. The Modcrab(贪心)
- Codeforces Educational Codeforces Round 3 C. Load Balancing 贪心
- Educational Codeforces Round 21 E - Selling Souvenirs(三分or贪心背包)
- Educational Codeforces Round 39 (Rated for Div. 2)(A-D)(水题 + 模拟 + 贪心模拟 + DP)
- Educational Codeforces Round 8 C. Bear and String Distance(贪心)
- 【Educational Codeforces Round 2C】【贪心】最少修改数下得到字典序尽可能小回文串
- Codeforces Educational Codeforces Round 3 D. Gadgets for dollars and pounds 二分,贪心
- Educational Codeforces Round 25
- Educational Codeforces Round 5(B)贪心
- Educational Codeforces Round 18 -- C. Divide by Three (贪心)
- 【Educational Codeforces Round 6C】【DP or 贪心】Pearls in a Row n个数分最多区间使得每个区间都有重复数
- Educational Codeforces Round 25 D. Suitable Replacement
- Educational Codeforces Round 25 A. Binary Protocol
- Educational Codeforces Round 25 D. Suitable Replacement
- Educational Codeforces Round 25 D. Suitable Replacement【二分】
- Educational Codeforces Round 20 C 数学/贪心/构造
- Educational Codeforces Round 25 E. Minimal Labels(拓扑排序)