#include
#include
#include
using namespace std;
int main()
{
int n;
while(cin >> n)
{
stack one;
string od1,od2;
bool state[10001];
cin >> od1 >> od2;
int from = 0 , to = 0;
int i = 0;
while(from < n)
{
while(od1[from] != od2[to])
one.push(od1[from++]),state[i++] = false;
one.push(od1[from++]),state[i++] = false;
while(!one.empty() && one.top() == od2[to] )
{
one.pop();
to++;
state[i++] = true;
}
}
if(to < n - 1)
cout << "No.\n";
else
{
cout << "Yes.\n";
for(int i = 0 ;i < 2 * n; i++)
{
if(state[i])
cout << "out\n";
else
cout << "in\n";
}
}
cout << "FINISH\n";
}
return 0;
}
hdu1022 train problem 栈的应用,布布扣,bubuko.com
原文地址:http://www.cnblogs.com/congluwen/p/3739086.html