leetcode 1833 雪糕的最大数量 第一眼想到的是dp,其实只能排序加贪心

2023-10-28

夏日炎炎,小男孩 Tony 想买一些雪糕消消暑。

商店中新到 n 支雪糕,用长度为 n 的数组 costs 表示雪糕的定价,其中 costs[i] 表示第 i 支雪糕的现金价格。Tony 一共有 coins 现金可以用于消费,他想要买尽可能多的雪糕。

给你价格数组 costs 和现金量 coins ,请你计算并返回 Tony 用 coins 现金能够买到的雪糕的 最大数量 。

注意:Tony 可以按任意顺序购买雪糕。

示例 1:

输入:costs = [1,3,2,4,1], coins = 7
输出:4
解释:Tony 可以买下标为 0、1、2、4 的雪糕,总价为 1 + 3 + 2 + 1 = 7

示例 2:

输入:costs = [10,6,8,7,7,8], coins = 5
输出:0
解释:Tony 没有足够的钱买任何一支雪糕。

示例 3:

输入:costs = [1,6,3,1,2,5], coins = 20
输出:6
解释:Tony 可以买下所有的雪糕,总价为 1 + 6 + 3 + 1 + 2 + 5 = 18 。

菜鸟新手刚入leetcode刷题,也是刚进csdn写博客,有不足之处还请大佬们多多指教

对于这个题乍一眼我就下意识想着用动态规划dp求解了,以看很明显的就是简单的背包问题,于是我立马的就开始写出了dp摸板并跑了几个实例,然后提交,慢慢期待,没想到结果却被一组大数据给卡了超时了,下面我将把超时数据贴下

[282,1834,280,912,386,1900,1367,1242,369,745,1977,807,275,1987,1314,142,1338,1637,332,908,1402,542,287,962,1292,1180,1482,1690,2,1060,88,1122,401,1704,1792,1539,1938,612,1905,1592,582,1784,82,664,261,770,934,1422,902,1981,447,1385,1418,370,118,486,1117,1530,1058,618,1945,574,818,134,1277,1338,754,282,1399,1433,1191,1436,1202,918,1757,450,1342,767,606,1846,647,1650,624,448,50,1722,1002,943,1220,1795,742,626,1802,1179,1274,1542,152,1282,963,1776,1970,1738,696,136,804,1902,1202,621,534,262,919,430,702,1843,1947,1847,1982,1830,888,1492,1905,786,1157,874,1624,562,418,498,1144,830,1931,1802,497,514,1708,1002,462,1514,890,782,172,1680,34,331,372,302,120,416,1608,1420,1702,842,252,1207,1735,1924,1862,6,1076,1042,1186,1922,1762,1661,1490,1727,266,142,672,496,1062,1592,166,1097,1988,802,1566,1514,1099,358,572,878,102,478,568,343,1298,1556,1562,1968,1583,416,762,30,18,570,482,942,1922,1772,1477,508,1613,2001,1554,578,1726,34,747,1815,778,1202,1517,92,1387,422,120,1134,922,1106,1908,119,404,1890,1395,1787,850,482,1230,1280,1497,1250,761,314,1018,725,124,939,1185,1742,342,114,1344,1702,1896,494,242,1958,1861,1850,627,1872,611,1730,101,386,786,971,1980,215,298,1835,1957,22,1026,1388,1502,79,1810,1877,1217,1874,1807,1999,1925,1576,412,1567,834,1078,1346,722,1206,227,178,1796,836,1506,542,1097,1770,338,282,836,479,992,1847,1812,667,1852,1722,1248,1248,778,282,1340,1087,22,1285,456,402,260,1106,332,342,1797,408,738,702,175,503,1130,1510,722,1410,682,442,1538,756,562,142,682,1986,1586,294,493,454,1802,770,1734,1055,1217,512,449,834,1310,1762,1182,47,984,1530,784,1866,1910,362,500,1570,1542,1482,1330,702,1722,661,53,1822,1202,422,1300,160,222,1494,650,1774,738,552,1417,1049,1522,1066,1817,1242,715,482,162,188,975,82,1726,1860,157,1234,438,764,1414,567,1442,1126,1022,727,34,1251,1458,1732,1108,1938,178,1747,147,697,706,1282,206,594,317,1720,882,1802,938,1947,612,782,1666,812,1815,1704,682,1298,1738,876,1131,1540,161,627,945,1952,1635,742,878,1507,1642,1152,258,902,1014,402,1446,1607,1978,1313,734,858,977,552,1654,1602,870,1450,298,342,325,858,1022,1510,1687,1302,777,1664,218,1652,834,325,1746,1219,1968,62,632,718,942,780,2,1110,1947,1302,1862,238,1000,520,762,578,602,122,1181,132,604,42,526,1122,210,1208,794,530,370,1768,1441,712,737,108,1154,1268,1813,1713,720,1946,547,466,465,134,1762,582,1402,1660,2,923,946,1872,1502,586,1696,1354,1374,322,24,811,463,1510,437,282,1705,1582,1390,1282,621,896,1186,1247,342,180,425,1046,1162,1314,1738,502,1882,968,1094,1580,585,1252,912,1142,1042,1042,2,202,767,1343,1046,1042,1467,1082,1715,268,459,1602,1502,1690,302,1954,1016,1306,1982,342,877,1366,917,1002,524,1327,866,1512,1018,253,1756,1117,1276,358,1237,1486,1622,854,1306,1778,1802,1442,202,1002,1992,966,1297,1989,1774,22,332,352,288,359,310,692,312,1407,439,1167,998,1852,1618,1041,1884,264,590,430,142,1140,1652,156,938,1686,670,1578,156,1042,1680,1102,942,1442,1202,1842,525,1682,60,1447,1716,754,402,358,292,1592,214,563,1053,1309,654,1874,1322,1725,1644,690,20,1692,1232,92,1842,1498,775,1088,754,162,783,632,1973,1010,802,1252,722,57,1850,142,1802,84,1952,762,1482,1202,667,398,11,536,1797,1412,338,166,958,983,1504,1067,1797,66,1527,829,952,53,22,966,1830,308,80,274,1393,632,454,777,186,1002,2,1542,1186,1534,1266,1796,647,969,360,806,978,292,402,1029,1442,1368,1278,1752,122,1354,568,37,1452,1224,674,450,1206,1405,1016,2,1634,697,427,1211,710,573,208,412,1900,554,395,1252,752,1637,542,258,574,518,1794,891,963,106,14,783,976,1648,122,1742,962,557,1992,1022,1776,6,985,1058,743,1452,1872,1060,427,242,1208,402,882,76,158,1941,256,1922,1000,1170,1977,50,1203,880,559,46,1727,762,286,1746,1782,638,1717,1142,602,1952,1383,1409,692,335,290,386,1326,221,1901,1470,1064,981,257,148,1890,42,1288,1928,195,791,1252,1898,1695,470,696,1220,1873,1190,1088,889,1930,112,1969,996,422,78,1228,1636,781,802,1430,810,512,677,350,1188,1608,726,844,1465,1325,1648,910,1122,1896,1902,653,1826,1586,1382,440,1068,562,1066,1546,622,94,1328,737,246,922,1018,1678,1802,1102,1960,1922,682,306,1750,1708,1163,972,1913,1722,482,589,1169,431,623,392,142,1443,134,638,1602,1842,518,1422,526,1074,383,1846,1512,1224,256,897,1956,1060,972,421,502,1878,1980,1970,1691,1947,730,1507,1130,1320,738,1133,4,846,102,221,952,1587,1342,1300,1283,1786,850,905,180,26,1647,750,46,1988,122,756,1177,1524,1603,1960,242,536,82,1942,1569,243,1268,562,238,1314,880,395,2,1386,674,1717,538,1842,50,1010,802,1902,572,898,952,1624,1250,1682,432,501,832,490] 767081

和我的dp超时代码如下:

仔细以看原来数据规模是10的5次方,而dp的话时间复杂度是n方的时间复杂度,所以超时了,dp是不适用这个题了,因此只能另寻他法,使用先排序在贪心,这个思路的主要时间复杂度在于排序的那部分,排序的话需要O nlog(n)的时间复杂度对于这个10的5次方的数据来说是能够过的,贪心的话只需要O(n)的时间复杂度,综合这个思路就是O nlog(n)的时间复杂度,空间复杂度是O(1),然后试了写一下代码如下:

最后提交  通过成功

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

leetcode 1833 雪糕的最大数量 第一眼想到的是dp,其实只能排序加贪心 的相关文章

随机推荐

  • 梦幻模拟战手游服务器维护,梦幻模拟战手游无法登陆游戏 服务器异常登录解决方法_游侠手游...

    梦幻模拟战手游 异常登录怎么办 无法登陆游戏怎么办 还没解决的玩家 下面小编就为玩家带来 梦幻模拟战手游 服务器异常登录无法登录解决方法 一起来看看吧 服务器异常登录无法登录解决方法 各位指挥官 真的非常抱歉 服务器目前不稳定 会有部分指挥
  • oracle 创建数据库 create database,使用create database语句创建数据库的详细操作步骤...

    使用create database语句创建数据库的步骤如下 1 指定一个实例标识符SID 2 确保设置了必要的环境变量 3 选择一个数据库管理员验证方法 4 创建一个初始化参数文件 5 只用于windows平台 创建一个实例 6 连接实例
  • 2022全国大学生数学建模竞赛C题思路模型

    1 比赛报名与思路解析 持续更新750967193 2 比赛时间 2022年9月15日18点到2022年9月18日20点 如下为C题思路 C 题 古代玻璃制品的成分分析与鉴别 丝绸之路是古代中西方文化交流的通道 其中玻璃是早期贸易往来的宝贵
  • Java异常, 性能有多差

    在 Java 中 异常通常被认为是成本昂贵的 不应该用于控制控制 本文将证明这个观点的正确性 并验证导致性能问题的原因 Java微基准测试框架 在编写代码评估Java异常的性能成本之前 我们需要搭建一个基准测试环境 测量异常的成本开销 并不
  • 04C++11多线程编程之创建多个线程和数据共享问题分析

    04C 11多线程编程之创建多个线程和数据共享问题分析 1 thread循环创建多个子线程 思想就是使用容器创建多个线程 推荐 以后工作中会使用到 具有实际意义 方便统一管理线程 include
  • Staple 跟踪: Complementary Learners for Real-Time Tracking

    目标跟踪算法 Staple Complementary Learners for Real Time Tracking 小小菜鸟一只 2017 03 25 09 26 42 15110 收藏 14 分类专栏 目标跟踪 版权 文章下载链接 文
  • 辨析Java与Javascript

    首先 它们是两个公司开发的不同的两个产品 Java是SUN公司推出的新一代面向对象的程序设计语言 特别适合于Internet应用程序开发 而JavaScript是Netscape公司的产品 其目的是为了扩展Netscape Navigato
  • 人才供应链(17年12月)

    库克来中国访问时说 高质量的人才是Apple公司最需要的 而苹果商店的开发者中 中国有200万开发者在支持应用商店 其中大部分是在广州 苹果的供应链也在中国 配套的零部件 面对高要求和近似到极限的品质要求 只有在中国才能满足 IT行业的人才
  • 压缩/减小VirtualBox虚拟硬盘文件占用空间

    文章目录 网上的做法 导出虚拟电脑 再导入 网上的做法 网上有两种压缩空间的做法 1 在虚拟机中 使用 SDelete 例如 sdelete c z 经本人实测 不仅不能压缩 因为SDelete 扫描了整个c 盘 而 VirtualBox
  • 【多模态】7、DINO

    文章目录 一 背景 二 方法 2 1 Contrastive DeNoising Training 2 3 Mixed Query Selection 2 4 Look Forward Twice 三 效果 论文 DINO DETR wit
  • 联想E450c下vmware安装ubuntu " Intel VT-x 处于禁用状态"

    实验环境 lenovo E450c 报错信息 解决办法 按F12进入BIOS 选择Security下的Virtualization 在Intel R 的行 设置Enabled 按F10保存 重新打开虚拟机 参考链接 vmware安装ubun
  • linux 挂载以及初始化硬盘

    linux 挂载以及初始化硬盘 简述 过多的赘述就不说了 一般使用linux完成一些像iscsi服务存储配置啥的 都需要用到硬盘的挂载来扩充服务器的存储空间 这里就简简单单给大家讲一下linux如何挂载初始化新的硬盘 我这里使用的是linu
  • CRC编码计算方法及C语言实现

    CRC编码计算方法及C语言实现 CRC Cyclic Redundancy Check 是一种常用的错误校验码 用于检测和纠正传输过程中的错误 在数据通信和存储中 CRC编码被广泛应用 因为它能够高效地检测错误 并且实现简便 CRC编码计算
  • V神·以太坊上的分片

    译者序 本文是我应以太坊中文社区 Ethfans org 之邀做的翻译稿 原文取自以太坊社区的Github https github com ethereum sharding blob develop docs doc md 原文最后更新
  • Flamingo

    基于已有的图像模型和文本模型构建多模态模型 最终模型的输入是图像 视频和文本 输出是文本 Vision encoder来自预训练的NormalizerFree ResNet NFNet 之后经过图文对比损失进一步学习 图片经过Vision
  • antd中Tabs切换控制其他地方的标签显隐(react)

    antd中Tabs切换控制其他地方的标签的显示与隐藏 过程如下 tab的回调函数 拿到key值之后就离成功不远了 然后在右边的标签下还有内容 也需要根据tab切换去控制显隐 和上面是一个道理 可以直接给里面的每个div类名 根据key值 去
  • Java写一个excel工具类_Java操作Excel工具类(poi)

    1 importorg apache commons lang3 exception ExceptionUtils 2 importorg apache poi hssf usermodel HSSFDataFormat 3 importo
  • STM32传感器外设集 -- 蓝牙(HC-05)+超声波(hc-sr04)

    前言 前言 蓝牙外设还没有给大家安排上 今天我就给大家安排上使用蓝牙传输超声波距离的例程 会给大家附带蓝牙的上位机的测试APP 一 模块介绍 1 连接图 蓝牙模块 引脚 超声波传感器 引脚 GND GND GND GND VCC 3 3 V
  • 基础IO(文件输入输出、标准IO接口、文件描述符和文件流指针)

    目录 基础IO 文件的输入输出操作 FILE fopen char filename char mode 文件名称 打开方式 size t fread char buf size t block size size t block coun
  • leetcode 1833 雪糕的最大数量 第一眼想到的是dp,其实只能排序加贪心

    夏日炎炎 小男孩 Tony 想买一些雪糕消消暑 商店中新到 n 支雪糕 用长度为 n 的数组 costs 表示雪糕的定价 其中 costs i 表示第 i 支雪糕的现金价格 Tony 一共有 coins 现金可以用于消费 他想要买尽可能多的