Prob_Solve 板


LINE

http://www.spoj.pl/problems/AE00/ 這題大意在於給定n個1 x 1的方塊,可以組成二維平面的幾種不同型式的矩形。 所謂二維就是不能堆高,不同型式的矩形就是翻轉後相同者要去掉。 n個方塊不一定全部用到。 所以,4個方塊。 1) * 2) ** 3) *** 4) **** 5) ** ** 答案是5。 又,9個方塊。 * ** *** **** ***** ****** ******* ******** ********* ** ** *** *** **** **** *** *** *** 共13組解。 我寫出以下的accepted code: #include <cstdio> int R[10001]; int main() { R[0] = 0; R[1] = 1; for(int i = 2; i <= 10000; ++i) { R[i] = i; for(int j = 2; j * j <= i; ++j) { R[i] += i / j - (j - 1); } } int N; while(~scanf("%d", &N)) { printf("%d\n", R[N]); } return 0; } judge後花費了0.47s。時間複雜度應該是O(N ^ 1.5) (經指正以修改)。 但是排行榜上面幾乎都是0.00s。這應該有O(1)的公式解。 於是我輸出了1到30的解,然後到以下網站搜尋也順利查到了。 http://oeis.org/A094820 看了COMMENTS有符合題意,但是上面沒有附FORMULA。 所以來請益是否能導出公式,謝謝。 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.25.241.129
1F:→ firejox:痾...你建表的時間複雜度是O(N^1.5)吧... 10/09 02:03
2F:→ bleed1979:對,是我搞錯了。 10/09 08:28
※ 編輯: bleed1979 來自: 114.43.116.47 (10/09 08:41)
3F:→ LinkCar:我覺得壓不進O(N^1.5) 除非靜態建表作弊吧... 10/09 09:02
4F:推 atoi:可以用找質數那樣篩的去做 順便動手腳就可以0.00了唷 10/09 11:05
大感謝樓上,我把時間推進到了0.03s,算是OK了。 大概是這樣做。 For all i in array R, 我觀察R[i] 和 R[i - 1], R[i] 包括 R[i - 1],並多了長和寬相乘等於 i 的個數。 ex. R[9] = 13, R[8] = 11, 多的2個矩形是 1 * 9 和 3 * 3。 1 * 9是自己, 3 * 3的話,3是9的因數。相當於篩3,只要是因數都要篩。 所以pre calculation如下: int R[10001] = {0}; R[0] = 0; R[1] = 1; for(int i = 2; i <= 10000; i += 2) { for(int j = i * i; j <= 10000; j += i) { ++R[j]; } } for(int i = 3; i <= 10000; i += 2) { for(int j = i * i; j <= 10000; j += i) { ++R[j]; } } 加上自己和R[i - 1]如下: for(int i = 2; i <= 10000; ++i) { R[i] += R[i - 1] + 1; } 這樣就搞定了,再次感謝各位的幫忙。 ※ 編輯: bleed1979 來自: 114.43.116.47 (10/09 13:19)
5F:推 LPH66:其實這就是 OEIS A094820 的敘述的意思... 10/11 07:26
6F:→ LPH66:所謂"多的"只不過就是面積為該數的矩形 10/11 07:26







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燈, 水草

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

TOP