時間限制:c/c++ 2秒,其他語言4秒
空間限制:c/c++ 65536k,其他語言131072k
64bit io format: %lld
星神是來自宇宙的
所以珂朵莉也是吧
所以我就出了個題
給你乙個長為n的序列a,有n*(n+1)/2個子區間,問這些子區間裡面和為完全平方數的子區間個數
第一行乙個數n第二行n個數表示序列a
輸出乙個數表示答案示例1
60 1 0 9 1 0
11
1 <= n <= 1000000 <= 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 ...