leetcode 786. K-th Smallest Prime Fraction

leetcode 786. K-th Smallest Prime Fraction

题目描述

A sorted list A contains 1, plus some number of primes. Then, for every p < q in the list, we consider the fraction p/q.

What is the K-th smallest fraction considered? Return your answer as an array of ints, where answer[0] = p and answer[1] = q.

Note:

  • A will have length between 2 and 2000.
  • Each A[i] will be between 1 and 30000.
  • K will be between 1 and A.length * (A.length - 1) / 2.

Difficulty: hard
786. K-th Smallest Prime Fraction


中文描述
给你一个包含1在内的,排好序的素数列表,找出第K小的分数p/qp < q[p, q]


输入格式
输入一个列表A,列表素数的集合。K表示需要第k小的。


Examples:

  1. Input: A = [1, 2, 3, 5], K = 3
    Output: [2, 5]
    解释:
    由A组成的分数排序:1/5, 1/3, 2/5, 1/2, 3/5, 2/3.
    第3小的是 2/5.

  2. A = [1, 7], K = 1
    Output: [1, 7]
    解释:
    由A组成的分数排序:1/7.
    第1小的是 1/7.


解答思路

  • 解法一:运用heapq

    1.把A的元素按顺序记为 p1p2p3pn A中有 n 个元素)。

    2.heapq先添加 p1pnp2pn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值