题目






思路

本题提供了一个数组A,里面有正序增长的数n+1个,A[0]默认为0,在输入中不给出。
定义了函数f(x)f(x)f(x)为序列A中小于等于x的整数里最大的数的下标
我们很容易发现如下规律:
假定xxx是000到N−1N-1N−1范围内的任意整数,iii是数组下标(0≤i≤n0≤i≤n0≤i≤n)

  • 当0≤x<A[n]0≤x<A[n]0≤x<A[n]时,f(x)=i−1(1≤i≤n)f(x)=i-1(1≤i≤n)f(x)=i−1(1≤i≤n)当且仅当A[i−1]≤x<A[i]A[i-1]≤x<A[i]A[i−1]≤x<A[i],此时0≤f(x)≤n−10≤f(x)≤n-10≤f(x)≤n−1
  • 当x≥A[n]x≥A[n]x≥A[n]时,f(x)=nf(x)=nf(x)=n

所以由sum(A)sum(A)sum(A)以及上述性质可得:
sum(A)=∑i=1n(A[i]−A[i−1])×(i−1)+(N−A[n])×nsum(A)=\sum_{i=1}^{n}(A[i]-A[i-1])\times(i-1)+(N-A[n])\times nsum(A)=∑i=1n​(A[i]−A[i−1])×(i−1)+(N−A[n])×n

参考样例理解:

代码

#include<iostream>
#include<cstdio>
using namespace std;
const int Max=210;
int A[Max];
int n,N;
int main()
{scanf("%d%d",&n,&N);for(int i=1;i<=n;i++) scanf("%d",&A[i]);int res=0;for(int i=2;i<=n;i++) res+=(A[i]-A[i-1])*(i-1);if(A[n]<N) res+=(N-A[n])*n;printf("%d",res);return 0;
}
  • 注意点:
    n是A[1]~A[n]的个数,也是实际数组中的最大下标
    实际数组:A[0]、A[1]、…A[n] (一共n+1个数,数组下标到n)

csp202112-1:序列查询 题解相关推荐

  1. CCF-CSP-202112-2:序列查询新解(C++11题解)

    文章目录 问题描述 解题思路 AC代码 问题描述 题目来源:CCF-CSP-202112-2:序列查询新解 解题思路 思路稍后再补. AC代码 PA了一次,是因为没开long long #includ ...

  2. CCF202112-1 序列查询

    试题编号: 202112-1 试题名称: 序列查询 时间限制: 300ms 内存限制: 512.0MB 问题描述:   解题思路: 顺序暴力枚举,因为对于数组a,a[i] < a[i+1] ,且 ...

  3. 牛客题霸 [括号序列] C++题解/答案

    牛客题霸 [括号序列] C++题解/答案 题目描述 给出一个仅包含字符'(',')','{','}','['和']',的字符串,判断给出的字符串是否是合法的括号序列 括号必须以正确的顺序关闭,&quo ...

  4. CCF CSP202112-2 序列查询新解

    CCF CSP202112-2 序列查询新解 题目背景 上一题"序列查询"中说道: A=[A0,A1,A2,⋯,An]A=[A_0,A_1,A_2,⋯,A_n]A=[A0​,A1​ ...

  5. CCF CSP202112-1 序列查询

    CCF CSP202112-1 序列查询 题目背景 西西艾弗岛的购物中心里店铺林立,商品琳琅满目.为了帮助游客根据自己的预算快速选择心仪的商品,IT 部门决定研发一套商品检索系统,支持对任意给定的预算 ...

  6. CSP 202112-1 序列查询 python

    CSP 202112-1 序列查询 python 题目描述 思路 其实这道题,我觉得提示给的非常清楚了,这个提示啊,直接送分了哈哈哈,所以我们只要根据提示,利用乘法运算,计算就可以得到结果 代码 # ...

  7. csp序列查询(C语言)

    csp序列查询 #include<stdio.h>int main(){int n, N, i, sum, j;int A[200];A[0] = 0;sum = 0;scanf(&quo ...

  8. ~5 ccf 2021-12-2 序列查询新解

    序列查询新解 题目描述 输入 输出 样例输入 样例输出 子任务 源代码 关于这题 题目描述 输入 输出 样例输入 样例1 3 10 2 5 8 样例2 9 10 1 2 3 4 5 6 7 8 9 样 ...

  9. ~4.2 ccf 2021-12-1 序列查询

    序列查询 题目描述 输入 输出 样例输入 样例输出 子任务 源代码 题目描述 输入 输出 样例输入 样例一 3 10 2 5 8 样例二 9 10 1 2 3 4 5 6 7 8 9 样例输出 样例一 ...

  10. CCF CSP 序列查询新解

    CCF CSP 序列查询新解(C语言) 题目背景 上一题"序列查询"中说道: A=[A0,A1,A2,⋯,An] 是一个由 n+1 个 [0,N) 范围内整数组成的序列,满足 0= ...

最新文章

  1. vue cli 添加html,vue-cli创建的项目,配置多页面的实现方法
  2. C++对C的加强之三目运算符功能增强
  3. hdu 4143 A Simple Problem 数论
  4. 制作镜像包时遇到的模块加载错误的问题
  5. C++ Templates 中的一个例子
  6. Hadoop Hive
  7. python内存泄漏解决方案_Python内存泄漏和内存溢出的解决方案
  8. java 队列总结queue v3 svv.docxjava 队列总结queue v3 svv.docx atitit. java queue 队列体系总结o7t 1. 队列概念 1 1.1. 队列
  9. Android开发:关于高德地图轨迹纠偏,只显示两个点问题的整体概述
  10. FSCapture录屏软件
  11. dht 爬虫 java_[C#搜片神器] 之P2P中DHT网络爬虫原理
  12. foxit pdf editor linux,Foxit PDF Editor
  13. 用C语言画空心三角形
  14. 科比投篮选择——数据采集
  15. Android APP在线自动更新安装
  16. linux电子相册,基于Linux电子相册的.doc
  17. java面向对象与面向过程的区别
  18. 英语学习APP开发解决方案
  19. node 简介及安装
  20. python for finance pdf_python金融大数据分析 pdf

热门文章

  1. 某些型号的Comba和D-Link路由器存在管理员密码泄露漏洞
  2. appStore苹果退款通知
  3. 3、SPSS做非参数检验
  4. 使用鼠标右击Gite Bash Here 将本地文件上传到 GitHub
  5. html所有的标签,html所有标签超详细概述
  6. 豆瓣top250html源码,用23行代码爬取豆瓣音乐top250
  7. html——陆海网站练习
  8. Java创建Shape类
  9. Excel的窗口如何冻结与拆分?
  10. Python入门学习二:列表