洛谷 P2309 loidc,卖卖萌
题目背景
Loidc萌萌哒。
他最近一直在靠卖萌追求他的真爱——vivym,经过几轮攻势后vivym酱眼看就要被他所攻略。擅长数据结构的vivym决定利用强大的数据结构之力帮助自己逃脱。
题目描述
Vivym给了loidc一串阿拉伯数字。他将一个数串的每个数字之和定义为该数串的数串和,vivym要求loidc求出数字中有多少个子串的数串和为正数。他想了半天总是解决不好,于是他便将这一棘手的问题交给了编程能力极强的你,他希望你能在1s内解决。不然vivym就要闪现过墙幽灵疾步跑掉了
输入输出格式
输入格式:
第一行一个数n,表示数串的长度。
第二行一共n个数,它就是那串阿拉伯数字
输出格式:
一个数,表示铭文中有多少个子串的数串和为正数。
输入输出样例
说明
30% n<=1000。
100% n<=100000。
对于题目读入的其他变量均介于-100~100。
思路:前置和+逆序对。
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int n;
long long ans;
long long num[],sum[],tmp[];
void up(int l,int mid,int r){
int i=l,j=mid+,tot=;
while(i<=mid&&j<=r){
if(num[i]>num[j]) ans+=mid-i+;
tmp[++tot]=num[i]<=num[j]?num[i++]:num[j++];
}
while(i<=mid) tmp[++tot]=num[i++];
while(j<=r) tmp[++tot]=num[j++];
for(int k=;k<=tot;k++)
num[l++]=tmp[k];
}
void work(int l,int r){
if(l<r){
int mid=(l+r)/;
work(l,mid);
work(mid+,r);
up(l,mid,r);
}
}
int main(){
scanf("%d",&n);
for(int i=;i<=n;i++){
scanf("%lld",&num[i]);
sum[i]=sum[i-]+num[i];
}
for(int i=;i<=n;i++){
num[i]=sum[n-i+];
if(num[i]>) ans++;
}
work(,n);
cout<<ans;
}
洛谷 P2309 loidc,卖卖萌的更多相关文章
- Luogu P2309 loidc,卖卖萌
题目链接:Click here 题目大意:给你一个长度为n的数串,问这个数串的sum为正数的子串个数 Solution: 我们先处理以下前缀和,记为\(s_i\) 则问题可以转化为求有多少对\(i,j ...
- 洛谷P1783 海滩防御 分析+题解代码
洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ...
- 洛谷 P2317 [HNOI2005]星际贸易 解题报告
P2317 [HNOI2005]星际贸易 题目描述 输入输出格式 输入格式: 输出格式: 如果可以找到这样的方案,那么输出文件output.txt中包含两个整数X和Y.X表示贸易额,Y表示净利润并且两 ...
- BZOJ1855或洛谷2569 [SCOI2010]股票交易
一道单调队列优化\(DP\) BZOJ原题链接 洛谷原题链接 朴素的\(DP\)方程并不难想. 定义\(f[i][j]\)表示到第\(i\)天,手上持有\(j\)股时的最大收益. 转移方程可以分成四个 ...
- 洛谷 P1783 海滩防御 解题报告
P1783 海滩防御 题目描述 WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和仓库总是被敌方派人偷袭 ...
- 【题解】洛谷P1073 [NOIP2009TG] 最优贸易(SPFA+分层图)
次元传送门:洛谷P1073 思路 一开始看题目嗅出了强连通分量的气息 但是嫌长没打 听机房做过的dalao说可以用分层图 从来没用过 就参考题解了解一下 因为每个城市可以走好几次 所以说我们可以在图上 ...
- 洛谷 P1023 税收与补贴问题 (2000NOIP提高组)
洛谷 P1023 税收与补贴问题 (2000NOIP提高组) 题意分析 一开始没理解题意.啰啰嗦嗦一大堆.看了别人的题解才明白啥意思. 对于样例来说,简而言之: 首先可以根据题目推算出来 28 130 ...
- [BZOJ 3039&洛谷P4147]玉蟾宫 题解(单调栈)
[BZOJ 3039&洛谷P4147]玉蟾宫 Description 有一天,小猫rainbow和freda来到了湘西张家界的天门山玉蟾宫,玉蟾宫宫主蓝兔盛情地款待了它们,并赐予它们一片土地. ...
- BZOJ4946 & 洛谷3826 & UOJ318:[NOI2017]蔬菜——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=4946 https://www.luogu.org/problemnew/show/P3826 ht ...
随机推荐
- mysql-安全管理
一.管理用户 用户账号和信息存放在数据库中 use mysql; select user form user; mysql数据库中包含一个user的表,它包含所有用户账号. user表中右移个名为us ...
- sage开发url替换字符串
/// <summary> /// Url字段值替换,无该字段则加入 /// </summary> /// <param ...
- Windows API Hook
原文地址:http://blog.sina.com.cn/s/blog_628821950100xmuc.html 原文对我的帮助极大,正是由于看了原文.我才学会了HOOK.鉴于原文的排版不是非常好, ...
- UNIX环境高级编程之第4章:文件和文件夹-习题
4.1 stat函数是尾随符号链接的,所以用stat替换lstat不会显示符号链接的信息 4.2 在一个目录下先再shell中输入umask shell进程再进行创建文件的操作.其权限抖都会被屏蔽 4 ...
- 我的Spring MVC第一个应用 (最终版)
项目结构图: 代码如下: Product package com.mstf.bean; import java.io.Serializable; /** * Product类,封装了一些信息,包含三个 ...
- jquery easyui a标记方法传值问题
今天开发一个功能,其操作的按钮式是一个点击的a标记,并且是动态生成的,其点击方法需要传参数具体代码如下 {field:'time',title:'日程时间',width:200,align:'cent ...
- Input Team
The Chromium Input team (aka input-dev) is a web platform team focused on making touch (P1) and othe ...
- caffe(7) solver及其配置
solver算是caffe的核心的核心,它协调着整个模型的运作.caffe程序运行必带的一个参数就是solver配置文件.运行代码一般为 # caffe train --solver=*_slover ...
- ECNUOJ 2149 华丽的队列
华丽的队列 Time Limit:3000MS Memory Limit:65536KBTotal Submit:531 Accepted:68 Description 每年,都有很多新同学来到我们 ...
- centos的终端字体杂乱的问题
sudo yum -y install dejavu-sans-* dejavu-serif-fonts 下载字体一下就好了