DongDong跳一跳
题目连接:https://ac.nowcoder.com/acm/contest/904/C
题意很好理解,思路想歪了,本来一道很简单的题,写了好久没写出来。
思路就是找每一个高度最大值的时候就是找“ 当前的小鱼干数量+(高度-允许差值到高度+允许差值中鱼干的最大数量) ”,复杂度为m*n*2,但我感觉复杂度爆炸了,所以我用线段树维护区间最大值,复杂度为n*logn
AC代码:(感觉线段树会爆内存,可能牛客的评测姬比较友好吧)
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e6+;
typedef long long ll;
typedef struct W_W{
int left;
int right;
ll weight;
}miao;
ll maxx(ll a,ll b){
if(a>b) return a;
return b;
}
miao x[maxn*];
void build(int l,int r,int dang){
if(l==r){
x[dang].left=l;
x[dang].right=r;
x[dang].weight=;
return;
}
int mid=(l+r)/;
build(l,mid,dang*);
build(mid+,r,dang*+);
x[dang].left=l;
x[dang].right=r;
x[dang].weight=;
}
ll query(int l,int r,int dang){
//printf("%d %d %d\n",dang,x[dang].left,x[dang].right);
if(l<=x[dang].left&&r>=x[dang].right){
return x[dang].weight;
}
if(l>x[dang].right){
return ;
}
if(r<x[dang].left){
return ;
}
//int mid=(l+r)/2;
ll a=query(l,r,dang*);
ll b=query(l,r,dang*+);
return maxx(a,b);
}
void update(int a,ll b,int dang){
if(x[dang].left>a) return;
if(x[dang].right<a) return;
if(x[dang].left==a&&x[dang].right==a){
x[dang].weight=b;
return;
}
update(a,b,dang*);
update(a,b,dang*+);
x[dang].weight=maxx(x[dang*].weight,x[dang*+].weight);
}
int main()
{ int m,n;
scanf("%d %d",&m,&n);
build(,,);
//printf("1111111111\n");
for(int i=;i<m;i++){
int a,b;
scanf("%d %d",&a,&b);
ll sum=query(max(,a-n),min(a+n,),);
//printf("111111\n");
update(a,sum+b,);
}
printf("%lld\n",query(,,));
return ;
}
DongDong跳一跳的更多相关文章
- 挑战App Store,微信通过“跳一跳”秀了一下“小程序”的肌肉
2017年即将结束的时候,微信放了一个大招.随着最新的微信v6.6.1版本更新,基于小程序的"小游戏"板块正式上线.微信上首发的这款"小游戏"叫"跳一 ...
- .NET开发一个微信跳一跳辅助程序
昨天微信更新了,出现了一个小游戏"跳一跳",玩了一下 赶紧还蛮有意思的 但纯粹是拼手感的,玩了好久,终于搞了个135分拿了个第一名,没想到过一会就被朋友刷下去了,最高的也就200来 ...
- C#又能出来装个B了。一步一步微信跳一跳自动外挂
PS:语言只是载体.思维逻辑才是王道 前天看见了个python的脚本.于是装python.配置环境变量.装pip.折腾了一上午,最终装逼失败. 于是进入博客园,顶部有篇文章吸引了我 .NET开发一个微 ...
- 用C#实现微信“跳一跳”小游戏的自动跳跃助手
一.前言: 前段时间微信更新了新版本后,带来的一款H5小游戏“跳一跳”在各朋友圈里又火了起来,类似以前的“打飞机”游戏,这游戏玩法简单,但加上了积分排名功能后,却成了“装逼”的地方,于是很多人花钱花时 ...
- Adb+.net 实现微信跳一跳自动化
第一次用adb,一开始只是想试试看能不能解析出,没有看网上的现有解析方式. 需要安卓机开启usb 调试+电脑运行.打开跳一跳的界面 点击程序 [开始]按钮即可开始,别的按钮都是调试用的 主要流程是用a ...
- 微信跳一跳Python
微信最新的小程序里面出了个叫“跳一跳”的小游戏,大神们也通过Python实现了自动玩游戏具体代码 如下: Github地址: https://github.com/wangshub/wechat_ju ...
- 微信跳一跳辅助自动跳Python
一.说明 此代码借鉴github一位大神所写,已经做了简化合并处理,如果能成功连上手机并运行,可以实现程序自动玩游戏,刷个1000+的分数轻轻松松 github源码地址 https://github. ...
- python如何玩“跳一跳”!(windows安桌版本请进!)
最近"跳一跳",很火爆,有木有? 看了一下网上的教程,动作搭建了一下环境,就可以用脚本自动跑起来啦!!! 下面说一下android手机的实现过程: 首先,是python环境的搭建 ...
- 微信小程序跳一跳辅助程序(手动版)
最近,微信官方推出了demo小程序游戏<跳一跳>,这个游戏操作简单,容易上手,却又不容易获得高分,受到很多人的喜爱(emm...这游戏有毒).自己也尝试了玩了几次,作为一个手残+脑残的资深 ...
随机推荐
- 解读人:朱月琴,Hippocampal proteomic alteration in triple transgenic mouse model of Alzheimer’s disease and implication of PINK 1 regulation in donepezil treatment
文章中文名:阿尔茨海默病三联转基因小鼠模型的海马蛋白质组学改变及Donepezil治疗中PINK 1调节的意义 发表时间:(2019年4月) IF:3.95 单位:澳门大学,威斯康星大学,暨南大学,广 ...
- WampServer的安装
首先安装好Microsoft Visual C++ 然后再安装WampServer 安装过程很简单 错误解决 运行后为黄色图标(成功运行应该为绿色图标) 解决办法: 1.80端口是否被占用 你的80端 ...
- 1、kubernetes系统基础190622
1.容器编排工具 docker编排工具三剑客:docker compose, docker swarm, docker machine IDC的操作系统:mesos 提供容器编排框架:marathon ...
- bzoj5506:[gzoi2019]旅行者
传送门 正反两边dijkstra染色,然后枚举一下边,求出最小值就好啦 代码: #include<cstdio> #include<iostream> #include< ...
- 关于json_encode和json_decode
json_encode将数组或者对象编码成字符串json_deode将字符串解码称对象或者数组,第二个参数为true时解码成字符串,否则解码成对象
- springboot 使用 mybatis + mapper
首先引入相关pom <dependency> <groupId>org.springframework.boot</groupId> <artifactId& ...
- Vue中的指令(听博主说总结的很好)
指令[重点] 作用:简化Dom操作 参考:https://cn.vuejs.org/v2/api/#%E6%8C%87%E4%BB%A4 特点: 1.都是以v-开头 2.除了插值表达式,其它都写在标签 ...
- django 请求生命周期
详细例子:
- jquery——制作置顶菜单
置顶菜单: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- Unity [Tooltip("")]
把Ad2Controller脚本挂在Ad2Ad3Manager游戏对象上,在非运行状态下把鼠标放在inspector的AdButtonObj2上就会显示广告2按钮. 如下图: