AWing:1227.分巧克力 (蓝桥杯)

cpp 复制代码
#include<iostream>
using namespace std;

const int N =1e5 + 10;
int h[N] = {0},w[N] = {0};
int n,k;

bool check(int mid){
    int ans = 0;                // ans 统计蛋糕以mid为边长 可以划分的数量
    for(int i = 0;i < n;i++){
        ans += (h[i] / mid) * (w[i] / mid);
        if(ans >= k) return true;
    }
    return false;
}

int main(){
    ios::sync_with_stdio(0),cin.tie(0);
    cin >> n >> k;
    for(int i = 0;i < n;i++) cin >> h[i] >> w[i];
    int l = 1,r = 1e5;  // 蛋糕最大的边长为右边界  
    while(l < r){
        int mid = l + r + 1 >> 1;
        if(check(mid)) l = mid; // 如果mid可以满足  还可以增加
        else r = mid - 1;
    }
    cout << l << endl;
    return 0;
}
相关推荐
choumou_M2 小时前
算法_1:由浅入深学习快速排序QuickSort
学习·算法·排序算法
Coder_Shenshen2 小时前
罗克韦尔ACD工程归档离线变量树解析
算法·c#
心仪久了会沦陷4 小时前
C语言数据结构入门——树与二叉树详解:概念、堆实现与链式遍历
c语言·数据结构·算法
小此方4 小时前
[算法实战论:动态规划]背包问题概念,01不满背包问题,01满背包问题,背包问题的滚动数组空间优化
算法·动态规划
悠仁さん5 小时前
【C++】哈希表
c++·算法·散列表
地平线开发者6 小时前
点云算法整理与常用计算模块:从数据到模型,再到工程与量化
算法·自动驾驶
武子康8 小时前
H3-World 为何在加载 LoRA 前,先检查导入的代码?
人工智能·深度学习·算法
秋天的怀念_David9 小时前
算法一千零一夜 · 第二十八夜 注册
java·程序人生·算法
NEFU_Jyj10 小时前
贝尔数(组合数学)
算法
希和202711 小时前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法