隨筆-55  評(píng)論-208  文章-0  trackbacks-0

          問題的來源是幫一個(gè)朋友改數(shù)據(jù)庫,要求是這樣的,60個(gè)題目,總分是100分,正確答案的分值有2分的 1.5分,其中分值的排列關(guān)系是隨機(jī)的,請(qǐng)問如何設(shè)置答對(duì)題目,使得答題總分剛好為一個(gè)數(shù)值,如82分
          我的解決辦法是:
          用一個(gè)集合記錄判斷是正確的2分題,當(dāng)發(fā)現(xiàn)期望總分和當(dāng)前累加總分差值小于1.5時(shí),因?yàn)樽钚挝皇?.5,在2分集合中退出一個(gè)正確的2分,然后繼續(xù)遍歷下去
          雖然后來用上面辦法解決了這個(gè)問題,但是我覺得這個(gè)問題的解法不夠通用,有很多問題,對(duì)這個(gè)問題擴(kuò)展了一下,大家一起討論一下
          一維的:和上面的題目一樣。用變量來描述一下這個(gè)問題
          有m個(gè)元素,其中每個(gè)元素有1個(gè)value值,o<value>,value的取值有x,y,z...,按照value值m個(gè)元素排列是隨機(jī)的,問如何用一次遍歷m,而得到n個(gè)元素,這n個(gè)元素的value總和是W
          二維的:其實(shí)就是俄羅斯方塊了,大家想象我們玩的俄羅斯方塊是不是這個(gè)道理
          有m個(gè)元素,其中每個(gè)元素有1個(gè)value值對(duì),o<v1,v2>,value的取值有x,y,z...,按照value值m個(gè)元素排列是隨機(jī)的,問如何用一次遍歷m,而得到n個(gè)元素,這n個(gè)元素的value中,v1
          的總和乘以v2的總和是W
          n維的:不知道用什么現(xiàn)實(shí)中的情況來描述了
          有m個(gè)元素,其中每個(gè)元素有1個(gè)value值對(duì),o<v1,v2,v3,...vn>,value的取值有x,y,z...,按照value值m個(gè)元素排列是隨機(jī)的,問如何用一次遍歷m,而得到n個(gè)元素,這n個(gè)元素的value中,v1
          的總和乘以v2的總和乘以v3的總和...一直乘到vn的總和是W

          呵呵,也許是我孤陋寡聞,上面這個(gè)題可能早有算法了,希望知道的朋友能告訴我一聲:)

          發(fā)現(xiàn)我好像犯了一個(gè)邏輯死角的錯(cuò)誤,其實(shí)一次遍歷后拿到value的分布圖就很簡(jiǎn)單了。。。。
          汗自己一個(gè),不刪除文章了,看看有沒有更好的算法,最好是不遍歷完就可以得到一個(gè)正確的結(jié)果

          posted on 2007-10-02 13:13 rocket 閱讀(3684) 評(píng)論(5)  編輯  收藏

          評(píng)論:
          # re: 一個(gè)堆積木的算法題,比較有意思,歡迎大家討論 2007-10-02 18:08 | t
          不知你的“一次遍歷后拿到value的分布圖就很簡(jiǎn)單了”是什么意思?難道是把所有的情況都記錄下來?那樣的話似乎情況太多了吧!  回復(fù)  更多評(píng)論
            
          # re: 一個(gè)堆積木的算法題,比較有意思,歡迎大家討論 2007-10-03 17:38 | 海邊沫沫
          程序員有時(shí)候也要用數(shù)學(xué)的頭腦思考問題撒。
          60個(gè)題目,總分100分,先列個(gè)方程組撒。得到的結(jié)果很顯然是有20個(gè)兩分題,40個(gè)1.5分題。

          對(duì)于最后得分這個(gè)數(shù)值,我認(rèn)為首先應(yīng)該判斷得分是奇數(shù)分還是偶數(shù)分,如果是偶數(shù)分,如82分,說明做對(duì)的1.5分題肯定是4的整數(shù)倍個(gè)。依此類推。

          然后再考慮數(shù)據(jù)結(jié)構(gòu)撒。  回復(fù)  更多評(píng)論
            
          # re: 一個(gè)堆積木的算法題,比較有意思,歡迎大家討論[未登錄] 2007-10-04 10:51 | Ryan
          發(fā)到水木的算法版問問,
          其實(shí)只要遍歷一遍,得出閾值范圍,求解方程即可。
          好像沒有好的直接算法,因?yàn)槭请S機(jī)的,很多因素不固定!  回復(fù)  更多評(píng)論
            
          # re: 一個(gè)堆積木的算法題,比較有意思,歡迎大家討論 2007-10-09 21:47 | glamour
          表達(dá)不清楚,在說一邊!  回復(fù)  更多評(píng)論
            
          # re: 一個(gè)堆積木的算法題,比較有意思,歡迎大家討論 2007-12-20 12:24 | sai
          多少年沒更新啦,現(xiàn)在很忙?  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 托克逊县| 高平市| 应用必备| 英山县| 民权县| 大丰市| 安顺市| 台南市| 扎囊县| 宣汉县| 镇康县| 修武县| 调兵山市| 拉萨市| 泾阳县| 太湖县| 阿克陶县| 瑞金市| 都安| 平阴县| 托里县| 洛阳市| 贡觉县| 辽中县| 休宁县| 内黄县| 谢通门县| 昆山市| 湖北省| 北海市| 鄯善县| 任丘市| 绍兴县| 乌拉特前旗| 平乐县| 安庆市| 政和县| 平定县| 延长县| 肇庆市| 海南省|