栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

leetcode 1539. 第 k 个缺失的正整数 cc++

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

leetcode 1539. 第 k 个缺失的正整数 cc++

题目描述
    第 k 个缺失的正整数
    难度
    简单

给你一个 严格升序排列 的正整数数组 arr 和一个整数 k 。

请你找到这个数组里第 k 个缺失的正整数。

示例 1:

输入:arr = [2,3,4,7,11], k = 5
输出:9
解释:缺失的正整数包括 [1,5,6,8,9,10,12,13,...] 。第 5 个缺失的正整数为 9 。
示例 2:


输入:arr = [1,2,3,4], k = 2
输出:6
解释:缺失的正整数包括 [5,6,7,...] 。第 2 个缺失的正整数为 6 。

提示:

1 <= arr.length <= 1000
1 <= arr[i] <= 1000
1 <= k <= 1000
对于所有 1 <= i < j <= arr.length 的 i 和 j 满足 arr[i] < arr[j] 
通过次数19,961提交次数37,004

代码



int findKthPositive(int* arr,int arrSize,int k){
	//int* b =malloc(sizeof(int)*1001);  //c,#include
	int *b=new int[1001];                //c++#include
	for(int i=0;ib[j] && jb[arrSize-1]){//j超过数组时用这个
        j=arrSize-1;
        x=k-b[j];
        y=x+arr[j];
        return y;
    }
    x=k-b[j];
    y=x+arr[j]-1;
    return y;  	
}
完整测试代码-b包括用例`
//leetcode 1539 第k个缺失的正数 

#include
using namespace std; 

int findKthPositive(int* arr,int arrSize,int k){
	//int* b =malloc(sizeof(int)*1001);
	int *b=new int[1001];
	for(int i=0;ib[arrSize])                           b 


     //0 1 2 3 4 5 6 7 8 9  10 11 12 13 14 15 
	 //1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
	 //0 1 2 3                                  j 
	 //1 2 3 4                                  k=2        arr
	 //0 0 0 0   #                                         b 

     //0 1 2 3 4 5 6 7 8 9  10 11 12 13 14 15 
	 //1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
	 //  0 1 2     3        4                     j 
	 //  2 3 4     7        11                   k=5        arr
	 //  1 1 1     3        6                                b 
	while(k>b[j] && jb[arrSize-1]){//j超过数组时用这个
        j=arrSize-1;
        x=k-b[j];
        y=x+arr[j];
        return y;
    }
    x=k-b[j];
    y=x+arr[j]-1;
    return y;  
    
		
		
}

int main(){
	int arr[10]={1,2,5,8,9,11,15,16};
	int brr[9]={5,6,7,9,11,12,14,15,16};
	int crr[11]={1,2,3,4,5,7,8,9,11,15,16};
	int drr[11]={1,2,3,4,7,8,9,11,15,16};
	cout<<"kkk    a:"< 
提交记录 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/778909.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号