Stone的txl数

Time Limit: 1000MS  Memory Limit: 65536KB

Problem Description

Stone 将一个序列中 m 个区间的和命名为 txl 数(区间重叠部分只取一次)。

现在,Stone 从 QAQ 的桌子上获得了一个序列,他想知道这个序列的 txl 数是多少。

Input

输入数据有多组(数据组数不超过 50),到 EOF 结束。

每组数据第一行为两个数 n, m (1 <= n <= 10^5, 1 <= m <= 1000),分别代表序列的长度和区间的个数。

第二行为 n 个数代表该序列,(1 <= a[i] <= 10^7);接下来 m 行每行两个数 l, r (1 <= l <= r <= n),代表区间 [l, r]。

Output

对于每组数据,输出一行,表示该序列的 txl 数。

Example Input

10 3
1 2 3 4 5 6 7 8 9 10
1 3
2 4
3 5

Example Output

15

Hint

Author

Stone

注意long long
解法一:将区间排序,对区间进行更新累加

#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e6+10;
int n, m, l, r;
long long a[MAX], sum[MAX];
struct node
{int l, r;
}lxt[1100];
void Sort(int l, int r)
{for(int i = l; i<=r-1; ++i){int k = i;for(int j = i+1; j<=r; ++j){if(lxt[k].l>lxt[j].l)k = j;}if(k!=i)swap(lxt[i], lxt[k]);}
}
int main()
{
//freopen("data1.in", "r", stdin);
//freopen("data1.out", "w", stdout);while(~scanf("%d%d", &n, &m)){sum[0] = 0;for(int i = 1; i<=n; ++i){scanf("%lld", &a[i]);sum[i] = sum[i-1]+a[i];}long long ans = 0;for(int i = 0; i<m; ++i)scanf("%d%d", &lxt[i].l, &lxt[i].r);Sort(0, m-1);int ll = lxt[0].l, rr = lxt[0].r;for(int i = 1; i<m; ++i){if(lxt[i].l>rr){ans+=sum[rr]-sum[ll-1];ll = lxt[i].l;rr = lxt[i].r;}else if(lxt[i].l>=ll&&lxt[i].r>=rr)rr = lxt[i].r;}ans+=sum[rr]-sum[ll-1];printf("%lld\n", ans);}return 0;
}

解法二:
b数组用来标记,左端点b[i]+1, 右端点b[i]-1
更新b[i] = b[1]+b[2]+....+b[i]
对于数组b[ ],任意b[i] >=0
b[i]>0 该点在区间内
搞不懂的可以在纸上写写示例的b[i]

#include <bits/stdc++.h>
using namespace std;
int a[100086],b[100086],n,m,i,l,r;
long long ans;
int main(){while(~scanf("%d %d",&n,&m)){ans=0;memset(b,0,sizeof(b));for(i=1;i<=n;i++)scanf("%d",&a[i]);while(m--){scanf("%d %d",&l,&r);b[l]++,b[r+1]--;}for(i=1;i<=n;i++){b[i]+=b[i-1];if(b[i])ans+=a[i];}printf("%lld\n",ans);}return 0;
}

Stone的txl数相关推荐

  1. 题解--Stone的txl数

    题目 **Problem Description Stone 将一个序列中 m 个区间的和命名为 txl 数(区间重叠部分只取一次). 现在,Stone 从 QAQ 的桌子上获得了一个序列,他想知道这 ...

  2. 【萌新投稿】自学几个月Python制作的明日方舟寻访模拟器

    很拙劣的程序.技术力不足,代码还有很多欠缺之处,希望大佬们多多指教! pool.py # 0和重复的元素只是为了控制概率 test = {'description':'无','six_up':['Au ...

  3. 2023年你最值得了解的信息技术-AI篇(一)

    列表 85 - 其他 辽宁省 大连优联智能 自动化生产线提供商 未融资 大连优联智能是一家自动化生产线提供商,集规划设计.制造安装.系统集成.视觉检测及AI数据智能分析于一体,可为汽车车身及发动机制造 ...

  4. 工业革命前数千年人口经济_我们已经进行了数千年的编程

    工业革命前数千年人口经济 by Tautvilas Mečinskas 由TautvilasMečinskas 我们已经进行了数千年的编程 (We have been programming for ...

  5. Java 递归解决 quot;仅仅能两数相乘的计算器计算x^yquot; 问题

    Java 递归解决 "仅仅能两数相乘的计算器计算x^y" 问题 /*** 求一个数的乘方* 求x^y,y是一个正整数. 设计算器仅仅能计算两数相乘,不能一次计算n个数相乘. * 知 ...

  6. stone/reverse/string/digit(完美消除)

    stone/reverse/string/digit(完美消除) stone: [问题描述] 平平去海边度假,海边有一片美丽的鹅卵石滩.平平在鹅卵石滩上捡了 $n$ 块美丽的 鹅卵石,并把它们排成一个 ...

  7. 【HDU - 6237】A Simple Stone Game(贪心,思维,素因子分解,数学)

    题干: After he has learned how to play Nim game, Bob begins to try another stone game which seems much ...

  8. stone 的 log4j配置详解

    stone 的 log4j配置详解 Log4J的配置文件(Configuration File)就是用来设置记录器的级别.存放器和布局的,它可接key=value格式的设置或xml格式的设置信息.通过 ...

  9. 数百万的 Android 手机预装了危险的恶意软件!

    整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 在看不见的角落,有多少黑暗正在蚕食着未知的世界? 本以为一款如手机.平板之类的全新设备在启用之际,就不会有任何安全风险的存在,然而万万没想 ...

最新文章

  1. python中的装饰器介绍
  2. matlab7 mat,matlab7.0里生成的mat文件为什么用matlab6.5打不开呢?
  3. JVM(3):Java GC算法 垃圾收集器
  4. Hibernate学习(三)
  5. python中返回上一步操作_selenium操作iframe元素,切入退出操作
  6. html和css实现时间表,前端 CSS : 6# 纯 CSS 实现时间线
  7. SOEM控制伺服电机
  8. 安卓游戏广告加速插件_安卓迅游加速器,无需登陆免费加速,国内外游戏均可加速下载...
  9. 笔记本计算机无法上无线网络,笔记本电脑无线网络连接不上的原因和解决办法...
  10. 在遇到移动硬盘无法访问的情况下,如何无需格式化地修复硬盘?
  11. 强者越强-效率与公平的幂律视角
  12. 图形面积计算Java,Java计算几何图形面积的实例代码
  13. 迷惘_飘云羽逸_新浪博客
  14. 上海电力大学计算机科学与技术学院,栗风永 - 上海电力大学 - 计算机科学与技术学院...
  15. 在线IDE- Gitpod介绍
  16. 详解凸优化、图神经网络、强化学习、贝叶斯方法等四大主题
  17. 微信公众平台开发入门教程(图文)
  18. cad线段总和lisp_求一个线段长度总和与生成文本 - AutoLISP/Visual LISP 编程技术 - CAD论坛 - 明经CAD社区 - Powered by Discuz!...
  19. php simplexmlelement object 数组,php中将SimpleXMLElement Object数组转化为普通数组
  20. 上海大学生计算机应用能力大赛答辩,2018年(第十届)上海市大学生计算机应用能力大赛成功举行...

热门文章

  1. android左右声道接反具体修正方法
  2. 2022年R2移动式压力容器充装考试模拟100题及模拟考试
  3. 多网卡电脑野外作业建议
  4. 信号运算与离散时间系统表示方法
  5. Git 辅助工具使用
  6. Java毕业设计-二手车交易平台管理系统 二手车交易管理系统 二手汽车交易系统 汽车销售系统 汽车商城
  7. 分享一套微信门户应用管理系统源码 微信公众号平台开发框架源码
  8. 视觉SLAM十四讲:从理论到实践(高翔著)电子版
  9. wps linux乱码,在Deepin系统中解决wps在显示数学公式时出现乱码的问题
  10. mac 上传文件和解压文件