欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

簡單問題的復雜解決

admin
2012年4月10日 15:11 本文熱度 2700

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



如果是學齡前兒童,5-10分鐘能解決這個問題,普通程序員要1個小時,受過更高教育的人 … 


8809=6


7111=0


2172=0


6666=4


1111=0


3213=0


7662=2


9313=1


0000=4


2222=0


3333=0


5555=0


8193=3


8096=5


7777=0


9999=4


7756=1


6855=3


9881=5


5531=0


2581=?



謎底揭示 …


該文章在 2012/4/10 15:11:09 編輯過

全部評論1

admin
2012年4月10日 15:11

答案跟每個數字里有多少個圈圈有關。在形狀上,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語言解釋器里運行。

## read in the training data
## more lines than it should be because of the https requirement in Github
temporaryFile <- tempfile()
download.file("https://raw.github.com/gist/2061284/44a4dc9b304249e7ab3add86bc245b6be64d2cdd/problem.csv",destfile=temporaryFile, method="curl")

series <- read.csv(temporaryFile)

## munge the data to create a frequency table
freqTable <- as.data.frame( t(apply(series[,1:4], 1, function(X) table(c(X, 0:9))-1)) )

names(freqTable) <- c("zero","one","two","three","four","five","six","seven","eight","nine")

freqTable$dep <- series[,5]

## now a simple OLS regression with no intercept
myModel <- lm(dep ~ 0 + zero + one + two + three + four + five + six + seven + eight + nine, data=freqTable)

round(myModel$coefficients)

最終的輸出結果如下:

> round(myModel$coefficients)
zero   one   two three  four  five   six seven eight  nine

  1     0     0     0    NA     0     1     0     2     1
你可以看到,0,6和9對應的值是1,而8對應的值是2。其它數字對應的都是0。而4得出的是NA,這是因為數字序列中沒有出現4。
哈哈。我也跟學齡前兒童一樣聰明了。而且我還用程序做了驗證。

該評論在 2012/4/10 15:14:10 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved