洛谷:B4477 [语言月赛 202601] 考场安排

题目描述

某学校拟组织学业水平测试,共有 n 个考场可以使用,依次编号为第 1∼n 考场。第 i 考场共有 ri​ 行 ci​ 列个座位。

该学校共有 m 名考生。学校必须从第 1 考场开始,编号连续地使用若干个考场。每个考场配备两名监考员。保证所有考场的位置总和足以容纳全部考生。

请你计算,学校最少聘请多少名监考员?

输入格式

第一行为两个整数 n,m。

接下来 n 行,每行两个正整数 ri​,ci​。

输出格式

输出一行一个整数,表示答案。

输入输出样例

输入 #1复制

复制代码
5 20
2 2
3 3
4 4
5 5
6 6

输出 #1复制

复制代码
6

说明/提示

【样例 1 解释】

共有 5 个考场和 20 名考生,各考场情况如下:

  • 第 1 考场,可容纳 4 人
  • 第 2 考场,可容纳 9 人
  • 第 3 考场,可容纳 16 人
  • 第 4 考场,可容纳 25 人
  • 第 5 考场,可容纳 36 人

使用第 1∼3 考场,共需要 6 名监考员。

【数据规模与约定】

对于 60% 的测试数据,1≤n≤103,1≤ri​,ci​≤50。

对于 100% 的测试数据,1≤n≤105,1≤ri​,ci​≤105,1≤m≤i=1∑n​ri​⋅ci​。

题解:

#include "iostream"

using namespace std;

int main(){

long long n,m;

cin>>n>>m;

long long r100005,c100005;

for(int i=0;i<n;i++){

cin>>ri>>ci;

}

long long sum=0;

for(int i=0;i<n;i++){

sum+=ri*ci;

if(sum>=m){

cout<<2*(i+1)<<endl;

break;

}

}

system("pause");

return 0;

}

相关推荐
洛水水12 分钟前
【力扣100题】81.寻找两个正序数组的中位数
数据结构·算法·leetcode
happymaker062641 分钟前
LeetCodeHot100——155.最小栈
算法
洛水水1 小时前
【力扣100题】85.每日温度
算法·leetcode·职场和发展
Coder-magician1 小时前
《代码随想录》刷题打卡day15:二叉树part05
数据结构·c++·算法
Kurisu_红莉栖1 小时前
力扣56合并区间
算法·leetcode
Darling噜啦啦1 小时前
二叉树与递归算法实战:从树结构到 LeetCode 爬楼梯,一文吃透前端数据结构与递归思维
前端·javascript·数据结构
Irissgwe1 小时前
算法的时间复杂度和空间复杂度
数据结构·c++·算法·c·时间复杂度·空间复杂度
随意起个昵称1 小时前
区间dp-基础题目3(永别)
c++·算法
周末也要写八哥1 小时前
有向图Hierholzer算法的另一种实现
算法
bIo7lyA8v1 小时前
算法调优中的性能回归与基准测试分析的技术8
算法·数据挖掘·回归