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

相关推荐
aramae9 分钟前
C++ IO流完全指南:从C标准库到C++流式编程
服务器·c语言·开发语言·c++·后端
ZHOU_WUYI12 分钟前
4. light wam 模型loss计算过程
开发语言·人工智能·python
_wyt00126 分钟前
c++里的族谱:树
c++·
长不胖的路人甲1 小时前
Serial 串行、Parallel 并行、CMS 并发收集器
java·开发语言·jvm
@三十一Y1 小时前
C++:AVL树实现
c++
ShineWinsu2 小时前
对于Linux:传输层协议UDP原理的解析
linux·c++·面试·udp·协议·传输层·计算机系统
LingzhiPi2 小时前
零知派ESP32--AS5600磁吸旋钮音量控制器
c++·单片机·嵌入式硬件
麻瓜老宋2 小时前
AI开发C语言应用按步走,表达式计算器calc的第二十四步,结束开发,生成calc 用法指南
c语言·开发语言·atomcode
小保CPP2 小时前
OpenCV C++车型识别1-图像预处理
c++·人工智能·opencv·计算机视觉
霸道流氓气质2 小时前
分布式系统中接口时序不确定性处理
java·开发语言·分布式