875专题

codeforces round 875 div2(a,b,c)

题目链接 正常难度 A #include<bits/stdc++.h>using namespace std;#define ing long longvoid solve(){int n;cin>>n;vector<int>a(n+1);for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<=n;i++){cout<<abs(n+1-a[i])<<' '

【LeetCode刷题】875. 爱吃香蕉的珂珂

1. 题目链接 875. 爱吃香蕉的珂珂 2. 题目描述 3. 解题方法 简单的用我自己的理解来解释一下这道题的意思。 所以也就是说找到一个速度k,看还有没有比k更小的速度能吃完数组中的香蕉,如果有则继续寻找,没有则是k这个速度。就好比上面的解释说明,其实k = 5这个速度也是可以的,但是题目说明要找吃掉所有香蕉的最小速度。 此时就是从1 ~ 1e9这些速度中找吃完所有香蕉的最

875. 快速幂(模板)

题目链接 #include <iostream>#include <vector>#include <algorithm> #include <cmath>#include <cstring>using namespace std;int main(){int n, a, b, p;cin>>n;while(n--){cin>>a>>b>>p;int res = 1;while(b

leetcode 875. Koko Eating Bananas

题意: KoKo(知名大猩猩可可(Koko),出题的作者肯定比较热爱大猩猩)喜欢吃香蕉。 桌子上有好几把香蕉,每一把有piles[i]根香蕉。 管理员会离开H 小时,然后KoKo就要在这H小时内偷吃香蕉。 KoKo要在管理员离开的H小时内把所有的香蕉吃完,就得有个吃的速度K。并且KoKo也不想吃的太快。 问题就是求出来这个吃的速度K。保证既能吃完,吃的速度也慢。 大家看完题目一头雾水。

【二分查找】875. 爱吃香蕉的珂珂

875. 爱吃香蕉的珂珂 解题思路 minEatingSpeed 方法是解决问题的入口。它接收一个整数数组 piles(每堆香蕉的数量)和一个整数 h(在规定时间内需要吃完所有香蕉的小时数)。该方法通过二分搜索来确定最小的吃香蕉速度,使得在规定时间内能够吃完所有香蕉。 left 和 right 变量用于指示当前二分搜索的左右边界。left 初始化为 1,而 right 初始化为 piles

Acwing---875. 快速幂

快速幂 1.题目2.基本思想3.代码实现 1.题目 给定 n n n 组 a i ai ai, b i bi bi, p i pi pi,对于每组数据,求出 abii m o d mod mod pi 的值。 输入格式 第一行包含整数 n n n。 接下来 n n n 行,每行包含三个整数 a i ai ai, b i bi bi, p i pi pi。 输出格

每日一题·875.爱吃香蕉的珂珂

题目 珂珂喜欢吃香蕉。这里有 n 堆香蕉,第 i 堆中有 piles[i] 根香蕉。警卫已经离开了,将在 h 小时后回来。 珂珂可以决定她吃香蕉的速度 k (单位:根/小时)。每个小时,她将会选择一堆香蕉,从中吃掉 k 根。如果这堆香蕉少于 k 根,她将吃掉这堆的所有香蕉,然后这一小时内不会再吃更多的香蕉。 珂珂喜欢慢慢吃,但仍然想在警卫回来前吃掉所有的香蕉。 返回她可以在 h 小时内吃掉

leetcode-875.爱吃香蕉的珂珂

问题问的是可以在h小时内吃掉所有香蕉的最小速度,所以以大于最小速度吃也可以吃完,那我们设定速度最大最小阈值,我们在这个范围内进行二分查找,即满足对应条件的左边界速度就是答案,我们设定最小速度为1,最大速度设定为含有最大数量的香蕉堆的数量。对应条件为能在h小时内吃掉所有香蕉。 所以这题相较于一般二分查找就多了一个计算吃掉所有香蕉耗时的步骤,具体实现请看代码,不难。 左闭右闭区间搜索法:

leetcode 875. 爱吃香蕉的珂珂C++

链接: 链接: 875. 爱吃香蕉的珂珂 描述和示例 代码: class Solution {public:long gettime(vector<int>& piles, int speed){long time = 0;for(auto a:piles){time+=(a+speed-1)/speed;}return time;}int minEatingSpeed(vecto