news 2026/6/15 12:22:20

小红的矩阵【牛客tracker 每日一题】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
小红的矩阵【牛客tracker 每日一题】

小红的矩阵

时间限制:1秒 空间限制:256M

网页链接

牛客tracker

牛客tracker & 每日一题,完成每日打卡,即可获得牛币。获得相应数量的牛币,能在【牛币兑换中心】,换取相应奖品!助力每日有题做,丰盈牛币日益多!

题目描述

小红有一个n × m n×mn×m大小的矩阵,矩阵第i ii行第j jj列的元素为i × j i×ji×j,小红想知道矩阵中第k kk小的元素是多少。

输入描述:

第一行三个整数n , m , k n,m,kn,m,k
1 ≤ n , m ≤ 1 0 5 , 1 ≤ k ≤ n × m 1≤n,m≤10^5,1≤k≤n×m1n,m105,1kn×m

输出描述:

输出一个整数表示答案。

示例1

输入:

3 3 4

输出:

3

说明:

矩阵为
1 2 3
2 4 6
3 6 9

解题思路

采用二分查找法确定矩阵中第k kk小的元素,初始设置左边界l = 0 l=0l=0、右边界r = k r=kr=k(因矩阵第k kk小元素必然不超过k kk),每次取中间值m i d midmid,统计矩阵中小于等于m i d midmid的元素数量(遍历每行i ii,该行符合条件的列数为m i n ( m , m i d / i ) min(m, mid/i)min(m,mid/i),累加所有行的数量得到s u m sumsum);若s u m ≥ k sum≥ksumk,说明m i d midmid可能是目标值或偏大,调整右边界r = m i d − 1 r=mid-1r=mid1并将m i d midmid记为候选结果,否则调整左边界l = m i d + 1 l=mid+1l=mid+1;该方法通过二分将问题转化为多次统计,每次统计时间复杂度O ( n ) O(n)O(n),二分次数约30 3030次,总复杂度为O ( n l o g k ) O(nlogk)O(nlogk),适配n nnm mm1 e 5 1e51e5的规模,最终候选结果即为矩阵中第k kk小的元素。

代码内容

#include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;typedefpair<ll,ll>pii;constll p=1e9+7;constll N=1e5+10;intmain(){ll n,m,k;cin>>n>>m>>k;ll l=0,r=k;ll res=0;while(l<=r){ll mid=(l+r)>>1;ll sum=0;for(ll i=1;i<=n;i++)sum+=min(m,mid/i);if(sum>=k){r=mid-1;res=mid;}elsel=mid+1;}cout<<res<<endl;return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/13 6:37:16

重塑Java工程效能:全流程智能开发平台实践解析

在Java企业级开发中&#xff0c;研发人员常面临工作流程割裂的挑战&#xff1a;从需求分析、接口定义、数据建模到代码实现&#xff0c;需在不同工具与上下文间频繁切换&#xff0c;不仅效率受限&#xff0c;也易产生设计不一致与细节遗漏。针对这一痛点&#xff0c;专注于Java…

作者头像 李华
网站建设 2026/6/15 5:39:18

Spring Boot + Kafka 实战:从入门到避坑,小白也能轻松上手!

视频看了几百小时还迷糊&#xff1f;关注我&#xff0c;几分钟让你秒懂&#xff01;一、为什么我们需要 Kafka&#xff1f;在现代微服务架构中&#xff0c;系统之间的通信不能总是“你等我、我等你”——这会导致性能瓶颈甚至雪崩。Kafka 就是一个高性能、高吞吐、可扩展的消息…

作者头像 李华
网站建设 2026/6/13 19:03:48

UGC链游开发白皮书:NFT道具合约的6层架构与80%项目忽视的权限风险

引言&#xff1a;当UGC遇见NFT&#xff0c;链游的“造物革命”在传统游戏中&#xff0c;玩家花费数百小时打造的装备可能因服务器关闭或账号封禁化为乌有&#xff1b;而在区块链游戏&#xff08;链游&#xff09;中&#xff0c;NFT技术让虚拟道具成为玩家真正拥有的数字资产。更…

作者头像 李华
网站建设 2026/6/14 20:03:40

Restormer 去雨(Deraining)任务代码运行全流程

本文将系统梳理基于 Restormer 模型实现图像去雨&#xff08;Deraining&#xff09;任务的完整流程&#xff0c;涵盖代码执行逻辑、核心文件架构及关键操作步骤&#xff0c;为实验的理解与复现提供清晰指引。若需获取适配新版环境的 Restormer 配置教程&#xff08;含避坑要点&…

作者头像 李华
网站建设 2026/6/13 22:14:18

鸿蒙 Flutter 安全组件开发:加密输入框与脱敏展示组件

一、引言 在鸿蒙&#xff08;HarmonyOS&#xff09;应用开发中&#xff0c;用户敏感信息&#xff08;如密码、手机号、身份证号&#xff09;的安全防护是核心需求之一。基于 Flutter 跨平台框架开发鸿蒙应用时&#xff0c;原生组件往往无法直接满足 “输入加密” 和 “展示脱敏…

作者头像 李华