Wannafly挑戰賽5 A 字首和 暴力

2021-08-13 05:47:22 字數 792 閱讀 5468

時間限制:c/c++ 2秒,其他語言4秒

空間限制:c/c++ 65536k,其他語言131072k

64bit io format: %lld

星神是來自宇宙的

所以珂朵莉也是吧

所以我就出了個題

給你乙個長為n的序列a,有n*(n+1)/2個子區間,問這些子區間裡面和為完全平方數的子區間個數

第一行乙個數n

第二行n個數表示序列a

輸出乙個數表示答案
示例1

6

0 1 0 9 1 0

11

1 <= n <= 100000

0 <= ai

<= 10

因為a給定範圍,由此可知完全平方數最大為1e6,這列舉平方數1---1e3

求字首和,列舉1---n 計算前面出現過多少個 sum[i]-i*i 

注意0需要初始化

#includeusing namespace std;

typedef long long ll;

int n;

int a[100015];

int ss[100015];

int ct[1000105];

int sum =0;

int main()

ll ans = 0;

for(int i=0;i<=1000&&i*i<=sum;i++)

ct[ss[j]]++;}}

cout << ans<

Wannafly挑戰賽5A 珂朵莉與宇宙

時間限制 c c 2秒,其他語言4秒 空間限制 c c 65536k,其他語言131072k 64bit io format lld 星神是來自宇宙的 所以珂朵莉也是吧 所以我就出了個題 給你乙個長為n的序列a,有n n 1 2個子區間,問這些子區間裡面和為完全平方數的子區間個數 第一行乙個數n 第...

Wannafly挑戰賽5 補題

a 珂朵莉與宇宙 思路 科學暴力 列舉字首和,同時計算字首和裡面可能出現的完全平方數,匹配字首和 與完全平方數的差值是否在之前的字首和出現,出現了幾次就是存在多少個區間,利用的是連續的性質。include using namespace std typedef long long ll const ...

Wannafly挑戰賽5 子串行

解題思路 若t字串第一次出現在1 i中,那麼i n的字元就可以隨便取了,1 i沒有被t字串中字母佔據的每個字母只能有25種取法,即在t中字母出現之前不能出現這個字母。那麼求排列組合我們在求乙個逆元就可以了。include include include includeusing namespace ...