题目描述

飞逝的的时光不会模糊我对你的记忆。难以相信从我第一次见到你以来已经过去了3年。我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀着你玫瑰色的脸颊。我明白,我已经沉醉于你了。之后,经过几个月的观察和窥探,你的优雅与智慧,你对待生活的态度和你对未来的愿望深切地在我心中留下了印象。你是迷人的阳光女孩,我总是梦想着与你分享余生。唉,实际上你远远超过了我最疯狂的梦想。我不知道如何桥起我与你之间的鸿沟。所以我没有任何计划,仅仅只是等待,等待一个适当的机会到来。直到现在,毕业的到来,我意识到我是个傻瓜,我应该创造机会并且抓住它而不只是等待。

这些日子里,我和我的朋友、室友、同学一个接一个地分开。我仍无法相信,在挥手之后,这些熟悉的面孔很快就会从我们的生活中消失,仅仅留下回忆。我明天就将离开学校。你已经计划远走高飞,追求你的未来,实现你的梦想。如果没有命运,也许我们不会再次相遇。所以今晚,我正在你的宿舍楼下徘徊,希望能偶然遇见你。但矛盾的是,你的美貌一定会使我心跳加速,我笨拙的舌头也许无法吐出一个字。我不记得我曾多少次经过你的宿舍楼,每次都希望看到你出现在阳台上或是窗台上。我不记得这个想法曾多少次在我的脑海中涌出:打电话叫她一起吃晚饭或是聊聊天。但每次,考虑到你的优秀和我的平凡,胆怯的优势超越勇气驱使我静静地离开。

毕业,意味着中学生活的终结。这些光荣与浪漫的时代结束。你可爱的微笑是我原来努力学习的动力,这单相思的爱情会被密封,作为一个我心灵深处的记忆。毕业,也意味着新生活的开始,一个到达光明未来的足迹。我真希望你在国外天天开心,一切顺利。同时,我将努力从幼稚中走出来,变得更加成熟。我的理想将是在现实中追求我的爱与幸福,我永远不会放弃。

再见了,我的公主!

如果有一天,在某个天涯海角,我们有机会相聚,即使是白发苍苍的男人和女人,在那个时候,我希望我们可以成为好朋友来自豪地分享这个记忆,重温年轻快乐的激情。如果这个机会永远没有到来,我希望我是天空中的星星,在你的窗外闪烁。远远地保佑着你,就像一个朋友,每天晚上陪伴在你左右,一同分享甜美的梦亦或是一同经历可怕的梦。

现在问题来了:天空可以理解为一条数轴,在这条数轴上分布着许多颗星星,对于每颗星星都有它的位置Xi和自身的亮度Bi。而窗户所能看到的范围是一个给出的参数W,我们看到的星星也包括窗户边缘的星星。现在,要你求出调整窗户位置后能看到星星的亮度之和最大值。

输入输出格式

输入格式:

一行N,W,分别代表星星的数量和窗户的宽度

余下N行,输入Xi和Bi,代表星星的坐标和亮度

输出格式:

一个数字,代表能看到星星的最大亮度和

输入输出样例

输入样例#1

6 3
1 2
2 4
3 8
4 4
5 2
1000 1

输出样例#1: 16

说明

样例说明:

对于10%的数据,W=0(没有边缘)

对于40%的数据,W<=1000

对于100%的数据,N<=100000,W<=100000,Xi<=100000,1<=Bi<=100

除W=0的情况外,W均为>=3的奇数


思路

好感人啊,都快哭了!文笔真的好好。

用sum(i)表示前i个星星的亮度和,sum(i-w)就是在窗户以外的亮度和了。显然有最大亮度和maxn=max(maxn,sum(i)-sum(i-w))。

看题解的时候,有人用前缀和没考虑w=0的情况。其实树状数组就不用特判了,求和的时候自动特判掉了。(sum(i)-sum(i-w)=sum(i)-sum(i)=0)。

所以膜拜一下写重口味线段树的同学。。orz

#include <stdio.h>
#include <iostream>
using namespace std;
int bit[100001]/*树状数组*/,n,m,maxn(-99999999);
inline int lowbit(int x)//将x转化成二进制数之后,只保留最低位的1及其后面的0,截断前面的内容,然后再转成10进制数
{return x&-x;
}
inline void update(int x,int k)//update操作
{while(x<=n){bit[x]+=k;x+=lowbit(x);}
}
inline int sum(int k)//区间求和
{int i(0);while(k>0){i+=bit[k];k-=lowbit(k);}return i;
}
signed main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);register int i,j;cin>>n>>m;for(i=1;i<=n;i++){int a,b;cin>>a>>b;update(a,b);}for(i=m;i<=n;i++){maxn=max(maxn,sum(i)-sum(i-m));}cout<<maxn<<endl;return 0;
}

[洛谷]P3353 在你窗外闪耀的星星 (#树状数组)相关推荐

  1. P3353 在你窗外闪耀的星星————树状数组,前缀和

    题解:本题主要考查树状数组的区间之和的最大值,用树状数组和前缀和(注意:一个位子可以放多个点) 代码如下: #include<iostream> #include<algorithm ...

  2. 洛谷 P3353 在你窗外闪耀的星星

    洛谷  P3353 在你窗外闪耀的星星 题目描述 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室, ...

  3. 洛谷——P3353 在你窗外闪耀的星星

    P3353 在你窗外闪耀的星星 题目描述 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向 ...

  4. 洛谷—— P3353 在你窗外闪耀的星星

    https://www.luogu.org/problem/show?pid=3353 题目描述 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年 ...

  5. 洛谷 P3353 在你窗外闪耀的星星(树状数组)

    利用数组在 x 处做个映射,为 x 点处的亮度之和,这样利用树状数组在区间查询的时候要注意一下端点的情况 从位置 1 开始,一直到 1e5,寻找最大的区间和,复杂度为 O(1e5logn),不开 o2 ...

  6. [洛谷]P3353 在你窗外闪耀的星星

     这题使用前缀和即可求解,毕竟是求某个数组的某个固定范围内和的最大值,但值得注意的是,某个位置可能会有多个星星叠加,所以亮度也是要累计的,且这里的长度1应该是指1这个位置所占的长度,比如窗的宽度是3, ...

  7. 【洛谷】【线段树】P3353 在你窗外闪耀的星星

    [题目描述:] /* 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀 ...

  8. 【Python】【C语言】P3353 在你窗外闪耀的星星

    题目背景 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了 3 年.我仍然还生动地记得,3 年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀着你玫 ...

  9. Luogu P3353 在你窗外闪耀的星星

    题目 题目描述 飞逝的的时光不会模糊我对你的记忆.难以相信从我第一次见到你以来已经过去了3年.我仍然还生动地记得,3年前,在美丽的集美中学,从我看到你微笑着走出教室,你将头向后仰,柔和的晚霞照耀着你玫 ...

最新文章

  1. Ubuntu上配置VS Code调试C++
  2. sqlserver可将字符转成数字再进行sum,如果varchar类型中存放的都是数字
  3. 基础必备 | Python处理文件系统的10种方法
  4. SVN checkout
  5. MySQL函数和操作符(超详细,备着查找)
  6. Mysql(8)——as和distinct和where的用法
  7. rocketMq发送事务消息
  8. 如何监控oracle的索引是否使用
  9. 再战JavaScript
  10. appium 驱动 对应9.0 系统_第一章:appium
  11. linux dprintk 日志,linux內核調試中的printk()函數詳解
  12. 在pycharm中安装pygame
  13. k系列服务器,Nvidia开普勒K4000、K2000、K2000D、K600四款Kepler架构Quadro显卡专业卡全新登场...
  14. html用ul li制作导航条
  15. python验证考拉兹猜想_Python考拉兹猜想输出序列代码实践
  16. Adobe国际认证设计师证书含金量怎么样?
  17. Win10家庭版 傻瓜安装datahub的备忘一则
  18. Video Stitching1024 视频拼接
  19. Python PEP8规范整理
  20. solidity不同sol文件的智能合约调用 A调用B

热门文章

  1. python方法调用名字不一样_python属性访问和方法调用是不是不一样
  2. 基于“认知预期”的情境意识预测模型
  3. mysql安装后怎么打开_mysql安装配置和启动
  4. 揭秘!刷百度权重的那些事,新手站长必看...
  5. 台灯国家标准级别是什么?护眼灯等级AA与AAA的区别
  6. 最新超好看Sakura单栏二次元个人博客模板+WordPress内核
  7. 淘宝高并发分布式架构演进之路
  8. 最新用友NC6.5文件上传漏洞
  9. 鸿蒙系统是否能投屏,华为鸿蒙系统是否能真正迎来春天?
  10. python爬取喜马拉雅FM雪中悍刀行整本有声小说!下次教你们爬付费!