成人免费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系統

2011-10-13 10:59:44

ADSL貓遠程控制網絡維護

2009-09-15 17:45:34

Linq多條件

2022-09-05 17:26:27

技術

2020-11-11 07:09:05

隔離直播系統

2014-04-18 09:30:49

基于網絡的APMAPM應用管理

2010-05-06 17:24:05

Unix命令

2022-04-18 09:00:00

數據庫向量機器學習

2024-09-23 10:00:00

代碼Python

2022-12-27 08:43:18

系統思維設計思維創新

2010-12-08 11:33:21

面試

2009-12-10 16:56:39

Ruby on RaiDHH

2023-01-04 10:24:42

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线不卡视频 | 久艹av | 欧美日韩国产精品一区二区 | 亚洲在线日韩 | 欧美精品一区二区三区四区 在线 | 久久成人国产精品 | 精品国产伦一区二区三区观看方式 | 欧美一级二级视频 | 国产日韩精品视频 | 欧美日韩一 | 一区二区三区免费观看 | h视频在线播放 | 免费人成激情视频在线观看冫 | 亚洲精品在线免费观看视频 | 五月天综合影院 | 国产一级免费视频 | 国产一区成人 | 99热这里都是精品 | 国产精品精品3d动漫 | 一级片av | 日韩一二区在线 | 国产午夜精品久久久 | 亚洲精品久久久久久久不卡四虎 | 日韩伦理电影免费在线观看 | 日日操夜夜操视频 | 天天综合久久网 | 黄色大片免费网站 | 天天干com | 国产精品久久久久久久久久久免费看 | 国产激情视频网址 | 91免费在线视频 | 亚洲天堂网站 | 亚洲视频免费 | 99re视频精品 | 999久久久| 99视频免费播放 | 日韩精品一区二区三区中文在线 | 国产久| 亚洲一区二区三区观看 | 国产精品成人一区二区三区吃奶 | 玖玖色在线视频 |