蓝桥杯2017年第八届真题-k倍区间-题解(C++代码)
摘要:```cpp
/*k倍区间
给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i a[i];
modK[i] ……
c++同余数定理解决
摘要:解题思路:原本想利用前缀和解决问题,但是看到数据量如此庞大就知道需要进行优化了 核心就是 a mod k == b mod 时,|a-b| mod k==0 利用这个就可以进行优化注意事项:参考代码:……
蓝桥杯2017年第八届真题-k倍区间 巧妙的结算
摘要:参考了别人的题解
```cpp
#include
using namespace std;
int n,k;
long long num[100005];//注意long long不然范围不……
1882: 蓝桥杯2017年第八届真题-k倍区间
摘要:解题思路:注意事项:1、数据比较多(n=1e5),建议用scanf读入2、最坏的情况前缀和是10万的平方,1e10,int最多2x10^9,开long long,ans也是3、时间复杂度->o(n^2……
前缀和数组+数论中的组合思想优化
摘要:解题思路: 这是蓝桥杯2017年B组的最后一道编程题。 首先此题想到前缀和的思想,用前缀和数组的两项相减得到字串之和,能通过33%的数据,差不多是N<=1000左右时能通过。 其次如果想要100%通……
蓝桥杯2017年第八届真题-k倍区间(模运算)
摘要:解题思路:计算前缀和后取余,余数一致即相差k倍.注意事项:c++注意开long long,注意从0开始。参考代码:#include<bits/stdc++.h>
using namespace st……
蓝桥杯2017年第八届真题-k倍区间-题解(C++代码)
摘要:解题思路: 1、 N 的范围上限是100,000,直接枚举 i 和 j 必然超时,所以使用前缀和将 Ai+1 + …… + Aj 变为 Sj - ……
蓝桥杯2017年第八届真题-k倍区间 前缀和
摘要:解题思路:#include <iostream>
using namespace std;
typedef long long ll;
const int N = 1e5 + 10;
……
蓝桥杯2017年第八届真题-k倍区间
摘要:解题思路: sum[i]表示前i项的和,如果(sum[j] - sum[i])%k ==0(i<=j),即sum[i]%k==sum[j]%k,则区间[i+1,j]之和是k的倍数,然后用sum[i……