尤拉計劃425題:質數連線
兩個正整數A和B被稱為相連的(用”A ↔ B”表示)如果以下條件之一成立:
(1)A和B的位數相同,且只有一位數字不同,例如123 ↔ 173。
(2)在A(或B)的左側加一位數字即得到B(或A),例如23 ↔ 223和123 ↔ 23。
我們稱質數P是2的親戚,如果能用相連的質陣列成的鏈連線2和P,且這些質數都不超過P。
例如,127是2的親戚。其中一種質數串如下所示: 2 ↔ 3 ↔ 13 ↔ 113 ↔ 103 ↔ 107 ↔ 127
然而,11和103不是2的親戚。
記F(N)是所有≤ N且不是2的親戚的質數和。 可以驗證F(103) = 431以及F(104) = 78728。
求F(107)。
思路:求出可能的親戚連線路徑,找出不在任何路徑中的質數
下面的sql求出路徑
with t as(select level+1 l from dual connect by level<100), n as(select level n from dual connect by level<8) ,pr as(select l from t minus select a.l*b.l from t a,t b where b.l>=a.l), lk(c,d,t) as( select c.l,d.l,1 tp from pr c,pr d where c.l<d.l and length(c.l)=length(d.l) and exists(select 1 from n where n<=length(c.l) having length(c.l)-1 = sum(decode(substr(c.l,n,1),substr(d.l,n,1),1,0))) union all select c.l,d.l,2 tp from pr c,pr d where c.l<d.l and length(c.l)=length(d.l)-1 and c.l=substr(d.l,2)) select distinct sys_connect_by_path(c,'/') from lk connect by prior d=c start with c=2 ;
上述程式碼的問題是單向的,即後面的總是比前面的大,漏了123 <-> 23這種,但是把 c.ld.l後,太慢了.“且這些質數都不超過P”這個條件也沒實現,感覺從路徑中再拆分出來,求max (其餘的) 比最後一個小的,有點笨.
with t as(select level+1 l from dual connect by level<100), n as(select level n from dual connect by level<8) ,pr as(select l from t minus select a.l*b.l from t a,t b where b.l>=a.l), lk(c,d,t) as( select c.l,d.l,1 tp from pr c,pr d where c.l<>d.l and length(c.l)=length(d.l) and exists(select 1 from n where n<=length(c.l) having length(c.l)-1 = sum(decode(substr(c.l,n,1),substr(d.l,n,1),1,0))) union all select c.l,d.l,2 tp from pr c,pr d where c.l<>d.l and length(c.l)=length(d.l)-1 and c.l=substr(d.l,2)), re(re) as( select distinct sys_connect_by_path(c,'/') from lk connect by nocycle prior d=c start with c=2) select l from pr where not exists(select 1 from re where instr(re||'/', '/'||l||'/')>0);
相關文章
- 尤拉計劃701:隨機連線區域隨機
- 尤拉篩線性篩質數
- 尤拉計劃512題(冪的尤拉總計函式和)函式
- 尤拉計劃595題:增量隨機排序隨機排序
- 尤拉計劃433題:歐幾里德演算法的步數演算法
- 尤拉計劃605題:結對投幣遊戲遊戲
- 尤拉計劃463題:奇怪的遞迴關係遞迴
- 用尤拉計劃題目來學q語法
- 尤拉計劃533題:卡邁克爾函式函式
- 000. 尤拉計劃簡介
- 尤拉計劃695:隨機長方形隨機
- 尤拉計劃717:取模公式之和公式
- 對尤拉計劃427題(n-序列) 的一些分析
- 尤拉計劃697:隨機衰減序列隨機
- 尤拉計劃713:圖蘭熱水系統
- 統計埠連線數
- 尤拉計劃711:二進位制黑板
- Tomcat最大連線數問題Tomcat
- 物件的數量 與 連線池連線數量的問題,困擾已久。物件
- 尤拉函式性質和模版函式
- Sqlserver執行計劃中表的四種連線方式SQLServer
- 記錄連線數導致警報失效,連線池少問題
- 利用容斥原理求尤拉計劃565題的S(1E9,2017)
- 統計TCP連線數和狀態TCP
- 力扣 204. 計數質數(每日一題)力扣每日一題
- 連線池和連線數詳解
- 尤拉計劃386題(反鏈的最大長度) 論壇python解法學習筆記Python筆記
- 尤拉計劃386題(反鏈的最大長度) 論壇c++解法學習筆記C++筆記
- MYSQL 檢視最大連線數和修改最大連線數MySql
- PHP-fpm MongoDB 連線數爆了問題PHPMongoDB
- 資料庫連線池的問題,連線池物件為靜態變數有問題麼資料庫物件變數
- 尤拉計劃287題:四分樹編碼(一個簡單的壓縮演算法)演算法
- python大佬養成計劃–協程實現TCP連線PythonTCP
- 【執行計劃】資料訪問方式,連線方式及方法
- Oracle 表連線 篩選欄位執行計劃不正確Oracle
- 11gr2全外連線優化執行計劃優化
- 如何設計質量規劃方案?
- MySQL連線數管理MySql