51nod 1289 大鱼吃小鱼
来源:互联网 发布:如何在淘宝网上开网店 编辑:程序博客网 时间:2024/05/20 23:59
这道题确实非常有趣,一直在想着用什么数据结构实现这个算法。最后看了下别人的思路瞬间明白了,原来还能用栈实现。然后总结了一下,好像如果问题涉及到顺序优先的时候应该都可以考虑一下栈。(如计算算数式,就是用栈来实现运算的优先级)。这道题的主要思路是,如果遇到朝向右游的鱼就把它入栈,如果是遇到朝向左的鱼则将其大小与栈顶的鱼做比较,如果大于栈顶的鱼则栈顶的鱼出栈,鱼的总数减一直到栈顶的鱼大于向左的鱼或者空栈;如果小于则栈顶原封不动,鱼的条数减一。
#include<cstdio>#include<stack>using namespace std;const int maxn=1e5+5;int n,t,w,cnt;int main(){ while(scanf("%d",&n)!=EOF){ cnt=0; stack<int> s; for(int i=0;i<n;i++){ cnt++; scanf("%d%d",&w,&t); if(t==1) s.push(w); if(t==0){ while(!s.empty()){ if(s.top()>w){ cnt--; break; } if(s.top()<w){ cnt--; s.pop(); } } } } printf("%d\n",cnt); } return 0;}
阅读全文
0 0
- 51nod 1289 大鱼吃小鱼
- [51nod]1289 大鱼吃小鱼
- 51nod-【1289 大鱼吃小鱼】
- 51nod 1289 大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼
- 51Nod 1289 大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼
- 51NOD-1289-大鱼吃小鱼
- 51Nod-1289-大鱼吃小鱼
- 51nod 1289 大鱼吃小鱼 栈
- 51nod - 1289 大鱼吃小鱼(栈)
- 51Nod 1289 大鱼吃小鱼 模拟
- 51nod -1289 . 大鱼吃小鱼(思维)
- 51nod 1289 大鱼吃小鱼 (栈_STL)
- 51Nod 1289 大鱼吃小鱼(模拟 有趣)
- 201711122223->mysql库新建table
- 新生赛 2017/11/12
- 栈(C语言实现)学习记录
- 6.14穷举法
- Android布局relative layout
- 51nod 1289 大鱼吃小鱼
- String、StringBuffer与StringBuilder 之间的区别
- 2000-开发工具
- 2017-11-12每日一练
- OKHttpClient的POST请求
- NOIP2017 滚粗记
- PyTorch学习记录-1PyTorch安装
- MySql避免重复插入记录的几种方法
- NSGA_II学习案例1