码迷,mamicode.com
首页 > 其他好文 > 详细

hdu 1022 模拟栈

时间:2015-04-12 22:42:55      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:

其实就是模拟一下栈啦。

 1 #include <iostream>
 2 using namespace std;
 3 
 4 const int N = 10;
 5 char o1[N];
 6 char o2[N];
 7 char s[N];
 8 int ans[N * 2];
 9 
10 int main ()
11 {
12     int n;
13     while ( cin >> n )
14     {
15         cin >> o1 >> o2;
16         int top = 0, p = 0, cnt = 0;
17         for ( int i = 0; i < n; i++ )
18         {
19             if ( top == 0 )
20             {
21                 s[top++] = o1[p++];
22                 ans[cnt++] = 1;
23             }
24             while ( s[top - 1] != o2[i] )
25             {
26                 if ( p == n ) break;
27                 s[top++] = o1[p++];
28                 ans[cnt++] = 1;
29             }
30             if ( s[top - 1] != o2[i] )
31             {
32                 break;
33             }
34             else
35             {
36                 top--;
37                 ans[cnt++] = 0;                
38             }
39         }
40         if ( cnt == 2 * n )
41         {
42             cout << "Yes." << endl;
43             for ( int i = 0; i < cnt; i++ )
44             {
45                 cout << ( ans[i] ? "in" : "out" ) << endl;
46             }
47         }
48         else
49         {
50             cout << "No." << endl;
51         }
52         cout << "FINISH" << endl;
53     }
54     return 0;
55 }

 

hdu 1022 模拟栈

标签:

原文地址:http://www.cnblogs.com/huoxiayu/p/4420834.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!