MATLAB 板


LINE

※ 引述《ReiFu21 (ReiFu)》之銘言: : 三個正整數 m n k 從 1 1 1 開始 : 1^2+1^2+1^2=3 一種變化 即1 1 1 : 2^2+1^2+1^2=6 三種變化 即2 1 1 , 1 2 1 , 1 1 2 : 2^2+2^2+1^2=9 三種變化 即2 2 1 , 2 1 2 , 1 2 2 : 3^2+1^2+1^2=11 三種變化 即3 1 1 , 1 3 1 , 3 1 1 : 2^2+2^2+2^2=12 一種變化 即2 2 2 : 3^2+2^2+1^2=14 六種變化 即3 2 1 , 3 1 2 , 2 1 3 , 2 3 1 , 1 2 3 , 1 3 2 : 我希望求出矩陣d : d= 3 1 : 6 3 : 9 3 : 11 3 : 12 1 : 14 6 :



※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 182.233.195.125 : ※ 編輯: ReiFu21 來自: 182.233.195.125 (06/14 21:55) : → mp19990920:3 2 2/3 3 3/2 2 3/2 3 3 這些要嗎? 06/15 02 : → mp19990920:漏了一個 3 3 2 06/15 02 : → ReiFu21:不用 只是平方值一樣大的都要加在一起 所以不只有1 3 6 06/15 10 : → mp19990920:.... 06/15 11 : → mp19990920:3 2 2, 2 3 2, 2 2 3/3 3 3/2 3 3, 3 2 3, 3 3 2 ... 06/15 11 : → mp19990920:更正如上所示 06/15 11 我的意思是如下程式出來後 base3 = dec2base(0:3^3-1, 3) - '0' + 1; sumsqr = sort(sum(base3.^2, 2)); sumsqr_ele = unique(sumsqr); d = [sumsqr_ele, histc(sumsqr, sumsqr_ele)]; = 3 1 6 3 9 3 11 3 12 1 14 6 17 3 19 3 22 3 27 1 3 2 2, 2 3 2, 2 2 3 3 3 3 2 3 3, 3 2 3, 3 3 2 3 3 1, 3 1 3, 1 3 3 這些為啥不考慮, 不然d不知道怎麼截 : → ReiFu21:希望可以算到指定的大小 像是3*(100^2)這麼大 但是細節諸 06/15 11 : → ReiFu21:如把所有排列可能都列出來就不用了 感謝 06/15 11 : 推 CBET:或是用暴力法把所有平方和算出來,再用unique並計算出現次數 06/15 13 C大, 教初學者用暴力法不太好吧! p.s. 我的推文有表達的那麼不清楚嗎? --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.67.63.26 ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 18:52)
1F:→ ReiFu21:是的 有要考慮 我希望可以鍵入一個值 像是100 如此100以內 06/15 18:54
2F:→ ReiFu21:的值像是你打的17,19,22,27程式都要跑出來 我還沒看懂你的 06/15 18:55
3F:→ ReiFu21:程式 不過我想C大可能認為這種問題無法用邏輯來跑 只能用 06/15 18:56
4F:→ ReiFu21:暴力法來解 因為我也找不出解決這個問題的邏輯 感謝你的程 06/15 18:57
5F:→ ReiFu21:式 我晚上回家再鑽研 06/15 18:57
6F:推 CBET:我指的暴力法就是m大的作法,看來我的表達也不清楚 XD 06/15 19:02
7F:推 ReiFu21:不過你漏掉了 4^2+1^2+1^2=18 可能邏輯上還是不對 06/15 19:02
若您的m, n, k 都要從 1~x 的話, 把剛剛的程式中3的部分換成x即可。 此處的3表示m,n,k是3個的意思   ↓ baseX = dec2base(0:x^3-1, x) - '0' + 1; sumsqr = sort(sum(baseX.^2, 2)); sumsqr_ele = unique(sumsqr); d = [sumsqr_ele, histc(sumsqr, sumsqr_ele)]; ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 19:09)
8F:→ CBET:不過m大的作法只能用在36以內,超過36還需要修改 06/15 19:03
是27吧? 請問您的36是如何來的? ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 19:10) ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 19:11) ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 19:15)
9F:推 CBET:我本來是指 m, n, k 只能到 36,但後來發現其實只能到 10 06/15 19:23
那您的10是怎麼得來的? 我的電腦上 sqrt(realmax/3) 大到 7.7410e+153 ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 20:54) ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 20:57)
10F:推 CBET:因為 dec2base(10, 11) 會等於 'A' 06/15 21:28
11F:→ CBET:m大的作法也可用 bsxfun 實現,就不用使用字串 06/15 21:30
謝謝C大, 我沒考慮到進制的表示, if x >= 2 && x<=36 baseX = dec2base(0:x^3-1, x); if x > 10 shiftChar = char(size(baseX)); iDigit = ismember(dec2base([0:35], 36), '0123456789'); shiftChar(iDigit) = '/'; shiftChar(~iDigit) = '6'; baseX = baseX - shiftChar + 1; else baseX = baseX - '/'; end sumsqr = sort(sum(baseX.^2, 2)); sumsqr_ele = unique(sumsqr); d = [sumsqr_ele, histc(sumsqr, sumsqr_ele)]; else error(message('MATLAB:dec2base:SecondArg')); end 以上的code可支援 x = 2~36 ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 22:01) 以下的code 可支援正整數的x num = [0:x^3-1].'; baseX = zeros(length(num), 3) baseX(:, 1) = floor(num/x^2); num = rem(num, x^2); baseX(:, 2) = floor(num/x); num = rem(num, x); baseX(:, 3) = num; sumsqr = sort(sum(baseX.^2, 2)); sumsqr_ele = unique(sumsqr); d = [sumsqr_ele, histc(sumsqr, sumsqr_ele)]; ※ 編輯: mp19990920 來自: 111.67.63.26 (06/15 22:28) ※ 編輯: mp19990920 來自: 111.67.58.177 (06/15 23:41)







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Soft_Job站內搜尋

TOP