C++课后习题训练记录Day42

1.练习项目:

输入描述

输入三个数字 n,m,k,每个数字的意义和问题描述中相同。

输入保证 1≤n,m≤5×10的5次方,1≤k≤n×m。

输出描述

输出一个数字表示第 k 大的元素。

2.选择课程

在蓝桥云课中选择题库,选择题号3404并开始练习。

3.开始练习

(1)源码:

#include<bits/stdc++.h>

using namespace std;

using ll=long long;

ll n,m,k;

ll rnk(ll mid)

{

ll res=0;

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

res+=min(m,mid/i);

}

return res;

}

int main()

{

ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);

cin>>n>>m>>k;

ll l=0,r=1e14;

while(l+1!=r){

ll mid=(l+r)/2;

if(rnk(mid)>=k){

r=mid;

}else{

l=mid;

}

}

cout<<r;

return 0;

}

(2)检验结果

对此代码进行检验,检验后无报错,提交此代码,判题结果为正确100分。

(3)练习心得:注意每段代码末尾的分号是否存在,如不存在则需即使补充;输入法是否切换为英语模式;语法是否错误。

相关推荐
老四啊laosi6 小时前
[C++进阶] 24. 哈希表封装unordered_map && unordered_set
c++·哈希表·封装·unordered_map·unordered_set
2301_764441336 小时前
LISA时空跃迁分析,地理时空分析
数据结构·python·算法
东北洗浴王子讲AI6 小时前
GPT-5.4辅助算法设计与优化:从理论到实践的系统方法
人工智能·gpt·算法·chatgpt
014-code6 小时前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
妙为6 小时前
银河麒麟V4下编译Qt5.12.12源码
c++·qt·国产化·osg3.6.5·osgearth3.2·银河麒麟v4
lly2024066 小时前
组合模式(Composite Pattern)
开发语言
Billlly6 小时前
ABC 453 个人题解
算法·题解·atcoder
玉树临风ives7 小时前
atcoder ABC 452 题解
数据结构·算法
游乐码7 小时前
c#泛型约束
开发语言·c#
Dontla7 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang