成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

簡單的問題復雜著解決

開發 開發工具
這段時間互聯網上火熱的流傳著一個智力測試題。題目出現的形式有多種,但大多看起來是下文的樣子。但是解決方法確讓你出乎意料。

這段時間互聯網上火熱的流傳著一個智力測試題。題目出現的形式有多種,但大多看起來是這個樣子:

  1. 如果是學齡前兒童,5-10分鐘能解決這個問題,普通程序員要1個小時,受過更高教育的人 … :)  
  2.  
  3. 8809=6 
  4.  
  5. 7111=0 
  6.  
  7. 2172=0 
  8.  
  9. 6666=4 
  10.  
  11. 1111=0 
  12.  
  13. 3213=0 
  14.  
  15. 7662=2  
  16.  
  17. 9313=1  
  18.  
  19. 0000=4 
  20.  
  21. 2222=0 
  22.  
  23. 3333=0 
  24.  
  25. 5555=0 
  26.  
  27. 8193=3  
  28.  
  29. 8096=5 
  30.  
  31. 7777=0 
  32.  
  33. 9999=4 
  34.  
  35. 7756=1 
  36.  
  37. 6855=3 
  38.  
  39. 9881=5 
  40.  
  41. 5531=0 
  42.  
  43. 2581=? 

謎底揭示 …

.

.

.

.

.

.

.

.

.

.

答案跟每個數字里有多少個圈圈有關。在形狀上,8有2個圈,所以記兩次。0是一個大圈,記1次。所以2581=2。很有趣,不是嗎?這是一種通過隱含的計算方式得出的另一種數值對應關系。

而困擾著我的卻是如何能以一種不基于數字形狀的方法來找到這種數值對應關系。我如何能編程讓計算機來解決這個問題?我認真思考了一下,因為我喜歡自認為是一個計量經濟學家,這道題看起來頗像一個可以通過一個OLS(ordinary least squares)表達式來解決的聯立方程式。那么,如何能講將這個問題和涉及到的數據轉化成一個小小的OLS表達式呢?我需要將每行的數字隊列轉換成一個描述數字出現頻率的表格。這樣,對于8809=6來說,我需要重構出來的數據應該類似于這樣:

1,0,0,0,0,0,0,0,2,1 = 6

在這種形式的公式中,10個數字分別代表著數字0-9在每串數據中出現的次數。我不知道如何得出這張頻次表,于是,按照我的習慣,我把這個問題做了一個簡潔的描述,張貼在StackOverflow.com上,如我愿的得到了一個極好的方案。一旦我建好了頻次表,問題就變成了一個簡單的關于10個獨立變量的線性表達式。

我的整個運算腳本——如果你十分感興趣的話——就是下面這些,你可以把它粘貼到R語言解釋器里運行。

  1. ## read in the training data  
  2. ## more lines than it should be because of the https requirement in Github  
  3. temporaryFile <- tempfile()  
  4. download.file("https://raw.github.com/gist/2061284/44a4dc9b304249e7ab3add86bc245b6be64d2cdd/problem.csv",destfile=temporaryFile, method="curl")  
  5.  
  6. series <- read.csv(temporaryFile)  
  7.  
  8. ## munge the data to create a frequency table  
  9. freqTable <- as.data.frame( t(apply(series[,1:4], 1, function(X) table(c(X, 0:9))-1)) )  
  10.  
  11. names(freqTable) <- c("zero","one","two","three","four","five","six","seven","eight","nine")  
  12.  
  13. freqTable$dep <- series[,5]  
  14.  
  15. ## now a simple OLS regression with no intercept  
  16. myModel <- lm(dep ~ 0 + zero + one + two + three + four + five + six + seven + eight + nine, data=freqTable)  
  17.  
  18. round(myModel$coefficients) 

Created by Pretty R at inside-R.org

最終的輸出結果如下:

  1. > round(myModel$coefficients)  
  2. zero   one   two three  four  five   six seven eight  nine  
  3.  
  4.   1     0     0     0    NA     0     1     0     2     1 

你可以看到,0,6和9對應的值是1,而8對應的值是2。其它數字對應的都是0。而4得出的是NA,這是因為數字序列中沒有出現4。

哈哈。我也跟學齡前兒童一樣聰明了。而且我還用程序做了驗證。

英文原文:Solving easy problems the hard way

原文來自:http://www.aqee.net/solving-easy-problems-the-hard-way/

【編輯推薦】

  1. 致Play Framework開發者們的一封信
  2. 為什么我不再做.NET開發
  3. 8個最棒的.NET開發相關工具
  4. 當.NET愛上Java的時候
  5. 給用戶和開發者***的.Net框架部署方案
責任編輯:林師授 來源: 外刊IT評論
相關推薦

2009-03-18 10:01:15

OracleIASNoClassDefF

2022-12-12 09:46:49

Kubernetes容器

2015-04-16 15:06:34

2024-06-11 07:54:53

2023-06-28 06:33:37

2024-11-04 13:17:12

2010-04-28 18:01:15

Unix系統

2009-09-15 17:45:34

Linq多條件

2011-10-13 10:59:44

ADSL貓遠程控制網絡維護

2020-11-11 07:09:05

隔離直播系統

2014-04-18 09:30:49

基于網絡的APMAPM應用管理

2022-09-05 17:26:27

技術

2022-04-18 09:00:00

數據庫向量機器學習

2010-05-06 17:24:05

Unix命令

2023-01-04 10:24:42

2010-12-08 11:33:21

面試

2024-09-23 10:00:00

代碼Python

2022-12-27 08:43:18

系統思維設計思維創新

2009-12-10 16:56:39

Ruby on RaiDHH
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产在线精品一区二区 | 国产成人午夜精品影院游乐网 | 青久草视频 | 中文字幕乱码一区二区三区 | 国产高清在线精品 | 黄色91在线 | 国产欧美视频一区二区 | 日韩国产精品一区二区三区 | 欧美日韩不卡在线 | 成人免费看黄 | 精品一区二区三区四区外站 | 91亚洲国产成人精品一区二三 | 欧美性jizz18性欧美 | 亚洲欧美日韩中文字幕一区二区三区 | 男女免费在线观看视频 | 国产精品久久国产精品久久 | 久热国产精品视频 | 国产精品一区二区免费 | 久久久久久国产 | av中文字幕在线观看 | 欧美日韩在线一区二区三区 | 亚洲精品1区2区3区 91免费看片 | 精品欧美一区二区久久久伦 | 视频一区二区三区中文字幕 | 91视频免费黄 | www.47久久青青| 日韩精品专区在线影院重磅 | 欧美中文字幕一区二区三区亚洲 | 久久精品—区二区三区 | 日韩欧美三区 | 天天摸天天干 | 羞羞视频免费在线 | 日韩av一区二区在线观看 | 欧美国产大片 | 亚洲乱码一区二区三区在线观看 | 香蕉久久久 | 成人在线视频网站 | 亚洲乱码国产乱码精品精98午夜 | 在线视频成人 | 欧美黄 片免费观看 | 欧美日韩一二三区 |