`
rocket
  • 浏览: 92080 次
  • 性别: Icon_minigender_1
  • 来自: 金城
社区版块
存档分类
最新评论

一个堆积木的算法题,比较有意思,欢迎大家讨论

阅读更多

问题的来源是帮一个朋友改数据库,要求是这样的,60个题目,总分是100分,正确答案的分值有2分的 1.5分,其中分值的排列关系是随机的,请问如何设置答对题目,使得答题总分刚好为一个数值,如82分
我的解决办法是:
用一个集合记录判断是正确的2分题,当发现期望总分和当前累加总分差值小于1.5时,因为最小单位是1.5,在2分集合中退出一个正确的2分,然后继续遍历下去
虽然后来用上面办法解决了这个问题,但是我觉得这个问题的解法不够通用,有很多问题,对这个问题扩展了一下,大家一起讨论一下
一维的:和上面的题目一样。用变量来描述一下这个问题
有m个元素,其中每个元素有1个value值,o<value></value>,value的取值有x,y,z...,按照value值m个元素排列是随机的,问如何用一次遍历m,而得到n个元素,这n个元素的value总和是W
二维的:其实就是俄罗斯方块了,大家想象我们玩的俄罗斯方块是不是这个道理
有m个元素,其中每个元素有1个value值对,o,value的取值有x,y,z...,按照value值m个元素排列是随机的,问如何用一次遍历m,而得到n个元素,这n个元素的value中,v1
的总和乘以v2的总和是W
n维的:不知道用什么现实中的情况来描述了
有m个元素,其中每个元素有1个value值对,o,value的取值有x,y,z...,按照value值m个元素排列是随机的,问如何用一次遍历m,而得到n个元素,这n个元素的value中,v1
的总和乘以v2的总和乘以v3的总和...一直乘到vn的总和是W


呵呵,也许是我孤陋寡闻,上面这个题可能早有算法了,希望知道的朋友能告诉我一声:)


分享到:
评论
1 楼 lixiao 2007-10-08  
wo~~
不知道我理解的对不对
似乎是背包问题啊~~
你去搜索一下,以前写过这样的程序.

相关推荐

    efficientdet-pytorch_efficientdet算法_堆积物_图片识别_

    基于yolo-v4模型算法和EfficientDet算法,提出一种以机器学习中的深度学习为基础,实现对于堆积物特别是河岸堆积物精确识别的算法模型架构方法,探讨及解决当前在河岸堆积物的识别检测方面缺少既成经验与模型方法的...

    积木(java)小游戏

    很好的一个软件哦。。 喜欢就下载哦。。 工作,学习,累了,可以娱乐的 好 工具! 希望大家支持!

    基于Matlab的核脉冲堆积恢复算法.pdf

    在核物理探测领域,核脉冲堆积现象是一个常见的问题,它发生在探测器在高计数率下工作时,产生的多个脉冲相互重叠,导致单个脉冲的信息丢失,进而影响测量的精确度。针对这一问题,本研究提出了一种基于Matlab的核...

    算法导论课后习题与思考题答案合集

    3. 第7章涉及快速排序算法,快速排序是一种分而治之的排序算法,通过一个轴点元素(pivot)来将数据分为两部分,一部分都比轴点小,另一部分都比轴点大。 4. 第8章讲述了线性时间排序,这类算法能够在平均情况下...

    基于Matlab的核脉冲堆积恢复算法.rar

    在IT领域,尤其是在信号处理和数据...总之,基于Matlab的核脉冲堆积恢复算法是一个强大的工具,它结合了核方法和优化技术,用于处理重叠脉冲信号。通过熟练掌握并应用这个算法,可以有效地解决各种领域的信号处理挑战。

    排序算法超完美比较

    4. 归并排序:归并排序是一种分治算法,它将一个数组分成两半分别排序,然后将排序好的两半归并成一个整体。归并排序的时间复杂度始终是O(nlogn),并且它是一种稳定的排序方法。归并排序的关键在于归并过程,即将两...

    筹码随机堆积算法文件

    筹码随机堆积算法excel文件

    平面域球颗粒堆积 opengl

    “ad”可能是作者的缩写或者是项目的代号,“front-open”可能意味着这是一个开放的项目,或者表示算法处理边界的方式,即从前面(front)开始填充,直到无法再添加新的球体为止。 总的来说,这个项目涉及到了...

    像堆积木那样学习程序设计——Scratch程序设计教学反思.pdf

    像堆积木那样学习程序设计——Scratch程序设计教学反思.pdf

    C常用算法程序集非数值计算排序

    堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。堆排序算法包含两个过程:建堆和排序。建堆是一个将记录按关键字有序化的过程,排序过程则是将堆顶...

    十大排序算法.pdf

    冒泡排序是一种简单的排序算法,它重复地遍历待排序的数组,比较相邻的元素,如果前一个元素大于后一个元素,就交换它们的位置。这个过程持续到没有再需要交换的元素为止,意味着整个数组已经排序完成。冒泡排序的...

    排序算法大集合,包括各种算法

    堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子节点的键值或索引总是小于(或者大于)它的父节点。堆排序的时间复杂度为O(n log n),且是原地排序,不需要额外空间。 7. **希尔排序**:希尔排序是...

    学习电脑信息像堆积木那样学习程序设计

    学习电脑信息像堆积木那样学习程序设计

    查找与排序算法的实现和应用

    选择堆积排序法是一种高效的排序算法,适用于大规模的数据结构。该算法使用堆积结构来存储数据,并对堆积结构进行排序。选择堆积排序法的时间复杂度为O(nlogn),因此非常适合大规模数据的排序。 在软件技术基础中,...

    计算机视觉算法面试准备 计算机视觉.pdf

    计算机视觉算法面试准备是一个总结计算机视觉算法的文档,涵盖了面试中常见的知识点。 排序算法 在计算机视觉中,排序算法是非常重要的。常见的稳定的排序算法有:直接插入排序、冒泡排序、归并排序、基数排序。...

    java算法大全源码包.zip

    建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表...

    人工智能大作业,一个俄罗斯方块,采用了pierre dellacherie算法实现电脑智能堆积俄罗斯方块

    该算法的核心在于构建一个状态空间树,每个节点代表游戏的一种可能状态,边则表示由一种状态转换到另一种状态的动作。在俄罗斯方块游戏中,这些动作可以是方块的旋转、下落或横向移动。 算法执行过程中,首先从当前...

    程序员必须知道的10大基础实用算法及其讲解

    堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。堆排序的平均时间复杂度为Ο(nlogn)。 归并排序算法是建立在归并操作上的一种有效的排序算法。该...

Global site tag (gtag.js) - Google Analytics