[Usaco2006 Nov]Bad Hair Day 乱发节
来源:互联网 发布:python隐马尔可夫模型 编辑:程序博客网 时间:2024/05/29 02:50
Description
农民John的某 N 头奶牛 (1 <= N <= 80,000) 正在过乱头发节!由于每头牛都意识到自己凌乱不堪的发型,FJ 希望统计出能够看到其他牛的头发的牛的数量。
每一头牛 i有一个高度 h[i] (1 <= h[i] <= 1,000,000,000)而且面向同一方向排成一排。第i头牛可以看到第i+1,i+2头牛,只要他们的高度严格小于第i头牛,并且中间没有其他奶牛阻挡
Input
Line 1: 牛的数量 N。
Lines 2..N+1: 第 i+1 是一个整数,表示第i头牛的高度。
Output
- Line 1: 一个整数表示c[1] 至 c[N]的和。
Sample Input
6
10
3
7
4
12
2
输入解释:
六头牛排成一排,高度依次是 10, 3, 7, 4, 12, 2。
Sample Output
5
3+0+1+0+1=5
跑一遍单调栈即可
#include<cmath>#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define inf 0x7f7f7f7fusing namespace std;typedef long long ll;typedef unsigned int ui;typedef unsigned long long ull;inline int read(){ int x=0,f=1;char ch=getchar(); for (;ch<'0'||ch>'9';ch=getchar()) if (ch=='-') f=-1; for (;ch>='0'&&ch<='9';ch=getchar()) x=(x<<1)+(x<<3)+ch-'0'; return x*f;}inline void print(int x){ if (x>=10) print(x/10); putchar(x%10+'0');}const int N=8e5;int stack[N+10];int main(){ int n=read(),top=0; ll ans=0; for (int i=1;i<=n;i++){ int x=read(); while (top&&x>=stack[top]) top--; ans+=top,stack[++top]=x; } printf("%lld\n",ans); return 0;}
阅读全文
0 0
- [Usaco2006 Nov]Bad Hair Day 乱发节
- bzoj1660[Usaco2006 Nov]Bad Hair Day 乱发节
- BZOJ 1660: [Usaco2006 Nov]Bad Hair Day 乱发节
- 【BZOJ 1660】 [Usaco2006 Nov]Bad Hair Day 乱发节
- [BZOJ1660] [Usaco2006 Nov]Bad Hair Day 乱发节
- 【BZOJ1660】【Usaco2006 Nov】Bad Hair Day 乱发节
- 1660: [Usaco2006 Nov]Bad Hair Day 乱发节(悬线法)
- [BZOJ1660][Usaco2006 Nov]Bad Hair Day 乱发节(单调栈)
- bzoj 1660: [Usaco2006 Nov]Bad Hair Day 乱发节(单调栈)
- [BZOJ 1660][Usaco2006 Nov]Bad Hair Day 乱发节:单调栈
- |BZOJ 1660|单调栈|[Usaco2006 Nov]Bad Hair Day 乱发节
- bzoj 1660: [Usaco2006 Nov]Bad Hair Day 乱发节(单调栈)
- 【bzoj1660】【单调栈】Bad Hair Day 乱发节
- Bad Hair Day
- poj3250 Bad Hair Day
- Bad Hair Day
- poj3250 Bad Hair Day
- poj3250 Bad Hair Day
- 【Python】记录三:Spyder使用心得(持续更新)
- 使用注解+xml配置完成spring的bean的装配
- eclipse中xml 注释、格式化代码
- dubbo注解的配置方式
- 微信公众平台接口开发基础
- [Usaco2006 Nov]Bad Hair Day 乱发节
- JavaScript13 数组总结
- 求出1到10、20到30和35到45的三个和
- MVP和sqlite数据库,XRecyclerView上啦加载下拉刷新的第三方注册登录,列表
- 6.16
- 【java】求1-10的和。
- 【Angular2】AnswerSheet组件设计
- 14 个你可能不知道的 JavaScript 调试技巧
- 侧滑菜单xml和代码