【CSP】202112-2 序列查询新解 题目大意: 给定一长度为n+1的严格单增数列A[a0,a1,a2,a3...,an],其中a0=0,an<N 定义f(x)为数列A中小于等于x的最大整数的下标,r=floor(N/(n+1)),g(x)=floor(x/r)。 当N<1e9,n<1e4的时候,求解|g(x)-f(x)|之和,x=0,1,2...,N-1 分析: 数据规...
WhereFlag=j;break;//跳出} }longlongLeftLong=WhereFlag-LeftFlag;//g(i)<=f(i)部分长度longlongRightLong=RightFlag-WhereFlag+1;//g(i)>f(i)部分长度longlongsum1=fFlag*LeftLong-GSum(LeftFlag,WhereFlag-1);longlongsum2=GSum(WhereFlag,RightFlag)-fFlag*RightLong; sum=sum+sum1+sum2; }//...
C++ 总结 本题链接:CSP 202112-2 序列查询新解 本博客给出本题截图: C++ #include <iostream>#include <algorithm>#include <cstring>#include <cmath>using namespace std;typedef long long LL;const int N = 100010;int a[N], b[2 * N];LL res, cnt;int main(){int n, m;cin >> n >> m...
A=[0,2,5,8] 如上表所示,sum(A)=f(0)+f(1)+⋯+f(9)=15。 考虑到 f(0)=f(1)、f(2)=f(3)=f(4)、f(5)=f(6)=f(7) 以及 f(8)=f(9),亦可通过如下算式计算 sum(A): sum(A)=f(0)×2+f(2)×3+f(5)×3+f(8)×2 样例2输入 9 10 1 2 3 4 5 6 7 8 9 Data ...