POJ 3250 hair cut
来源:互联网 发布:宏业清单计价软件 编辑:程序博客网 时间:2024/05/22 00:17
神奇的单调栈
将i看见j转化成j能被i看见
维护一个单调减的栈,在push新的元素的时候,栈的大小就是,能够看的见当前元素的个数,
自己刚开始是没有建立这个转化关系,从后面考虑。实在考虑不到,宛如一个智障。
#include <iostream>#include <cstdio>#include <cstring>#include <stack>typedef long long ll;using namespace std;int main(){ // freopen("in.txt", "r", stdin); int n; ll heigh,ans; stack<ll>s; while(scanf("%d",&n)!=EOF) { ans=0; cin>>heigh; s.push(heigh);//入栈 for(int i=1;i<n;i++) { cin>>heigh; while(!s.empty()&&s.top()<=heigh) //比較栈顶元素和新增加元素的关系 { s.pop(); } // cout << "pushing " << heigh << " " << s.size() << endl; ans+=s.size(); s.push(heigh); } cout<<ans<<endl; while(!s.empty()) s.pop();//空栈 } return 0;}
0 0
- POJ 3250 hair cut
- poj 3250 Bad Hair Day
- poj 3250 Bad Hair Day
- poj 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- poj 3250 bad hair day
- poj 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- POJ-3250-Bad Hair Day
- poj 3250 Bad Hair Day
- poj 3250Bad Hair Day
- poj 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- POJ 3250 Bad Hair Day
- 【poj 3250】 Bad Hair Day
- ramoops & pstore (persistent storage) 简要说明
- Android 5.0 之FloatingActionButton,TextInputLayout,Snackbar的使用
- 初识AJAX
- Ab压力测试说明
- 安装opensuse14 并配置lamp
- POJ 3250 hair cut
- NOIP2007 矩阵取数游戏 [dp] [高精度]
- PC端和移动端相应Enter
- 对恶意APP"淘宝宝贝分享图"的逆向分析
- 51. N-Queens
- Java中的sleep() | wait() | notify() | notifyAll()
- java基础理论
- rails动态定义实例方法和类方法
- 常见的web安全问题及防御