乙個正整數x
是質數,當且僅當x≥2
且x不是任何乙個[2,x−1]
的數的倍數。
乙個數字串是''質數串'',當且僅當它的每個非空連續子串表示的數字都是質數。
例子1:"373"是質數串,它的子串有"3"、"37"、"373"、"7"、"73"、"3",這些串表示的數字都是質數。
例子2:"55"不是質數串,因為"55"這個子串表示的數字不是質數。
相信聰明的你一定已經發現了乙個事實,那就是質數串的限制很緊,所以質數串的數量其實非常稀少。
給定乙個長度為n
的數字串s
,請統計它有多少個非空連續子串是質數串。注意兩個子串如果位置不同也算不同,比如"373373"中,"373"要算入答案兩次。
第一行包含乙個正整數t(1≤t≤30)
,表示測試資料的組數。
每組資料第一行包含乙個正整數n(1≤n≤100000)
,表示數字串的長度。
第二行包含乙個長度為n
的僅由字元'1'到'9'組成的字串s
。對於每組資料輸出一行乙個整數,即是質數串的非空連續子串數量。
36373373
537373
3313
12112235一拿到題感覺是dp 因為之前做過這種類似的字元dp 但是想不出來狀態轉移
題目暗示了質數串的條件非常嚴苛 所以可以列舉10000裡面的答案
很快發現只有
7233753
73373
滿足質數串
很多題都可以列舉尋找普遍性來做 就像廣工的那題簡單數學題
#includeusing列舉namespace
std;
//input
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define repp(i,a,b) for(int i=(a);i>=(b);i--)
#define ri(n) scanf("%d",&(n))
#define rii(n,m) scanf("%d%d",&n,&m);
#define riii(n,m,k) scanf("%d%d%d",&n,&m,&k)
#define rs(s) scanf("%s",s);
#define ll long long
#define inf 0x3f3f3f3f
#define rep(i,n) for(int i=0;i
#define clr(a,v) memset(a,v,sizeof a)
/////////////////////////////////
/#define n 500+5
bool su(int
x)int a[1000
];int
main()
int ok=1
; rep(j,
1,len)
rep(k,j,len)
if(ok)printf("
%d\n
",i);}}
#includeusingnamespace
std;
//input
#define rep(i,a,b) for(int i=(a);i<=(b);i++)
#define repp(i,a,b) for(int i=(a);i>=(b);i--)
#define ri(n) scanf("%d",&(n))
#define rii(n,m) scanf("%d%d",&n,&m);
#define riii(n,m,k) scanf("%d%d%d",&n,&m,&k)
#define rs(s) scanf("%s",s);
#define ll long long
#define inf 0x3f3f3f3f
#define rep(i,n) for(int i=0;i
#define clr(a,v) memset(a,v,sizeof a)
/////////////////////////////////
/#define n 500+5
intmain()
cout
}return0;
}
亂搞 正確姿勢的亂搞 模擬退火
模擬退火大概原理就是將熱力學裡面金屬退火的原理放在了統計學意義中。其在電腦科學中的應用也是很可觀的 處理一些無法用多項式時間複雜度解決的np問題。對於一些最優化問題,往往我們可以轉化為乙個神奇的函式 引數不限 比如像這樣 如果這個函式滿足單峰性,我們往往可以直接套用三分來處理,但是都說了這如果是乙個...
又是數學亂搞
開心,zkx 打算畫一束花送給cc。可問題是zkx 發現他並不會畫花,但機智的他卻發現只要先畫一棵五顏六色的樹,再把它翻轉180 度就 是一株漂亮的花了!zkx 決定用p 種顏色花這棵樹。但是乙個節點乙個節點畫太慢了,於是zkx 決定執行如下q 次操作 1 選取某種顏色,為c,並且選定乙個數字k 2...
亂搞 VScode配置
今天歡快地水過了一天,現在室友是誰都還不知道,無聊地記錄一下linux下vscode的配置 update 從orange大佬那裡看到了更好的配置owo lauch.json配置 prelaunchtask compile args stopatentry false,cwd environment ...