2019 GDUT 新生專題IV數論 G

2021-10-02 08:10:22 字數 846 閱讀 4706

題目:美素數

題目描述:

美素數:各位相加後,依然是素數。

在給出區間內找美素數的個數。

1.得出素數表

2.找美素數

3.標記美素數的位置

4.通過位置得區間美素數個數。

**:

#include

int a[

1000000

],b[

80000

],c[

80000];

intf

(int x)

//找各位相加的出的結果

return x+d;

}int

main()

for(i=

2,k=

0;i<

5e5;i++

)//用線性篩搞個質數表

}for

(i=5e5

;i<

1e6;i++

)for

(i=0

,j=0

;i)for

(i=0

;i)scanf

("%d"

,&t)

; k=1;

while

(t--

)//找區間

}for

(i=j-

1;i>=

0;i--)}

printf

("case #%d: %d\n"

,k++

,a[c[g]

]-a[c[s]]+

1);//得出美素數字置

}return0;

}

(以後不知道還能不能看懂這段**)

2019 GDUT 新生專題IV數論 D

題目 beautiful numbers 題目描述 在由k位由a,b組成的數 美麗數 當中,找到各位相加後依然由a,b組成的數,輸出這樣的數個數。題目分析 先列舉所以美麗數各位相加的結果,檢查其是否為美麗數,如果是,算出其a,b組合的方式數。include include int a,b,k lon...

2019 GDUT 新生專題 I A

給定n個數字,計算出最短的連續子串行,使這個子串行的全部數字之和大於或等於給定數字s。如果不存在可以滿足題意的子串行則輸出0。這是經典的,相對比較容易的尺取問題,通過遍歷每乙個連續子串行即可得出答案。但是,由於時間的限制,要注意一些已經沒有意義的連續子串行和被重複計算的過程。include incl...

2019 GDUT 新生專題 I B,C

給出n m的乙個地圖,代表著沒有水的陸地,w 代表著水窪,所以相鄰的水窪,包括對角相鄰,形成乙個池塘,要求的就是池塘的數目。通過深度優先搜尋,對每乙個水窪進行遍歷,被遍歷過的水窪被標記為陸地,防止被再次遍歷或者進入死迴圈,每次退出了迴圈則池塘數目加一,直到地圖上沒有水窪。include includ...