Prob_Solve 板


LINE

Q10083: Division (20點) 這題我有PO到知識家上: http://tw.knowledge.yahoo.com/question/question?qid=1508112308491 給你3個正整數 t,a,b(0 < t,a,b <= 2147483647),請你計算 ( t^a - 1) / (t^b - 1)。如果答案是小於100位數的整數,請輸出答案。否則請輸出 "is not an integer with less than 100 digits."。 Input 每組測試資料一列,含有3個正整數 t、a、b。 Output 每組測試資料輸出一列,如題目所述,格式請參考Sample Output。 Sample Input 2 9 3 2 3 2 21 42 7 123 911 1 Sample Output (2^9-1)/(2^3-1) 73 (2^3-1)/(2^2-1) is not an integer with less than 100 digits. (21^42-1)/(21^7-1) 18952884496956715554550978627384117011154680106 (123^911-1)/(123^1-1) is not an integer with less than 100 digits. --------------------------------------------------------------------------------------- 這題的重點是再,除數也就是分母也大於可以直接除的範圍 假設一個很大的被除數跟小小的除數 例如: 123123123123123123/123456 可以分割成 (123/123456)x 100000000000000 + (123/123456) x 1000000000000 ...... 可是這題的分母與分子都大餘可以用內建程式除的上限 可能這題有一些技巧 因為他是 (t^a-1) / (t^b-1) 若a=2的話 平方公式就是 (t+1)(t-1) = (t^2-1) Q1:那無限呢? 若題目是輸入除數和被除數都非常大 (這只是假設) 被除數 120000000000000 除數 1200000000 被除數可以拆成 (1200/1200)x(1000/1000)x(1000/1000)x1000x100 若被除數 21569874135145679246568947894654....... 除數 5645123487896456489421321.... 這種找因式的方法可能就跑不出來了 而一直相減的暴力法就更不用說了... (大數相除 *除數和被除數都溢位) Q2:不知道有大大有什麼好方法可以提供^^???? (VB6.0程式碼或者演算法都OK=ˇ=") -分割線--剛剛自己想出來的方法--------------------------- 用相乘and相減 找個位數 這三個重點 破解一組答案 先新增一個空白s="" (這是一組小算盤可以計算的數字) 假設 t^a-1=304696744428557889118768=a t^b-1=4654954984844849=b 兩個相除的結果=65456432=c 至於怎麼推到答案 a/b = c = 65456432 首先 看尾數 b的尾數=9 9*多少=a的尾數8 對乘2=18 把a-b整項*2 304696744428557889118768 - 4654954984844849*2 ------------------------- 304696735118647919429070 因為已經求到一位 2 所以把 0消掉(消掉一位) 304696735118647919429070/10 此時 a =30469673511864791942907 s= 2 & s 繼續 b的尾數=9 9*多少=a的尾數7 對乘3=27 把a-b整項*3 30469673511864791942907 - 4654954984844849*3 ------------------------ 30469659546999837408360 求到一位 3 所以把 0 消掉 a又變成了 3046965954699983740836 此時 s= 3 & s s 內容 = 32 以此類推 最後結果可以推到65456432 <使用程式VB6> 不知道有沒有其他更好更快速的解法? 或是 這題的正統解法?? -- ※性別:男  ※生日:1990/05/08 ※星座:金牛座  ※血型:A  ※我的無名;http://www.wretch.cc/blog/tomas0011 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.130.37.170







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

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

TOP