tt追着太阳走
我喜欢向日葵,它让我觉得生活温暖,明快,充满爱 我喜欢华丽的歌剧音乐剧,平静的生活要用些许的高贵填充 我喜欢认真地一丝不苟地生活,只有生活的有心人才能获得心灵的丰收 ——tt:)
博客园
首页
社区
新文章
新随笔
订阅
管理
posts - 9, comments - 49, trackbacks - 0
POJ 1363 Rails 解题报告
POJ 1363 Rails 解题报告
题目的意思是给出一组数,问你是不是一组合法的出栈序列。
我有两个思路:
1、每个已出栈之后的数且小于此数的数都必须按降序排列。复杂度O(n^2)
2、另一个思路就是直接模拟入栈出栈过程。虽然模拟毫无技巧可言,但复杂度O(n),优于算法1。
1
2
#include
<
cstdio
>
3
4
int
stack[
1005
];
//
栈
5
int
stack_len;
//
栈顶位置
6
7
int
main()
8
{
9
int
n;
10
while
( scanf(
"
%d
"
,
&
n ), n
!=
0
)
11
{
12
int
tmp;
13
int
last;
14
while
( scanf(
"
%d
"
,
&
tmp ) )
15
{
16
int
max
=
0
;
//
初始化部分
17
int
flag
=
1
;
18
stack_len
=
0
;
19
last
=
1
;
20
21
if
( tmp
==
0
)
{putchar(
'
\n
'
); flag
=
-
1
;
break
;}
//
如果是0结束此case
22
while
( last
<
tmp ) stack[stack_len
++
]
=
last
++
;
//
入栈
23
max
=
last;
24
25
for
(
int
i
=
1
; i
<
n;
++
i )
26
{
27
scanf(
"
%d
"
,
&
tmp );
28
if
( flag )
//
前提是合理则判断,若已不合理只读如数据,不进行判断
29
{
30
if
( stack_len
!=
0
&&
stack[stack_len
-
1
]
==
tmp )
//
如果栈非空且下一个该出栈的数字与读入数字相同,则出栈
31
{
32
--
stack_len;
33
last
=
tmp;
34
max
>?=
last;
35
}
36
else
if
( tmp
>
last )
//
如果读如的数字比已出栈的最大数字还大,则将读入数字之前的数字全部入栈,此数字作为出栈数字
37
{
38
for
(
int
i
=
max
+
1
; i
<
tmp;
++
i )
39
{
40
stack[stack_len
++
]
=
i;
41
}
42
max
=
last
=
tmp;
43
}
44
else
//
如果以上两个条件都不满足,则说明此数列不满足题意
45
{
46
flag
=
0
;
47
}
48
}
49
}
50
printf(
"
%s\n
"
, (( flag
==
1
)
?
"
Yes
"
:
"
No
"
) );
51
}
52
}
53
return
0
;
54
}
55
标签:
C++
,
POJ
,
解题报告
,
POJ 1363 Rails 解题报告
,
1363
,
Rails
,
模拟
绿色通道:
好文要顶
关注我
收藏该文
与我联系
posted on 2008-07-19 13:48
tt:)
阅读(587)
评论(0)
编辑
收藏
注册用户登录后才能发表评论,请
登录
或
注册
,
返回博客园首页
。
首页
博问
闪存
新闻
园子
招聘
知识库
最新IT新闻
:
·
Chrome将给老机带来更快的3D绘图性能
·
在线支付创业公司Stripe获红杉资本等1800万美元的投资,公司估值达1亿美元
·
创新工场孵化公司磊友科技今天正式推出首款大型手机HTML5网页游戏《黎明帝国》
·
霍金的伟大与不幸
·
Linux为什么成功?因为它的失败是免费的!
»
更多新闻...
最新知识库文章
:
·
高级编程语言的发展历程
·
如何学习一门新的编程语言?
·
学习不同编程语言的重要性
·
为什么我喜欢富于表达性的编程语言
·
计算机专业的女生为什么要学编程
»
更多知识库文章...
China-pub 2011秋季教材巡展
China-Pub 计算机绝版图书按需印刷服务
昵称:
tt:)
园龄:
3年7个月
粉丝:
5
关注:
2
<
2008年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
我的标签
C++
(6)
POJ
(4)
解题报告
(4)
状态空间动态规划
(3)
动态规划
(3)
状态空间dp
(3)
状态dp
(3)
POJ 2817 WordStack 解题报告
(1)
2817
(1)
WordStack
(1)
更多
随笔分类
(7)
algorithm(5)
math(1)
长篇大论的扯淡:-D(1)
随笔档案
(9)
2010年10月 (1)
2009年6月 (1)
2008年7月 (4)
2008年6月 (3)
tt的朋友们
wtt's baidu blog
积分与排名
积分 - 15168
排名 - 6397
最新评论
阅读排行榜
评论排行榜
推荐排行榜