poj 1028 浏览器栈

题目说的很明白了,按照题意做就行了

 

第一次用栈,wa了几次,注意弄清关系,别弄混当前页和栈中页的状态

 

就不多说了

 


#include<iostream>
#include<stack>
#include<string>
//#include<fstream>

using namespace std;

int main()
{

string p = "http://www.acm.org/";
stack<string> backward;
stack<string> forward;
string s;
backward.push(p);

//ifstream cin("in.txt");
while(cin>>s,s != "QUIT")
{
if(s == "VISIT")
{
cin>>s;
cout<<s<<endl;
backward.push(s);

while(!forward.empty())
forward.pop();

}

else if(s == "BACK")
{
// cout<<backward.size()<<endl;
if(backward.size() >= 2)

//if(!backward.empty())
{
forward.push(backward.top());
backward.pop();
cout<<backward.top()<<endl;
}
else
{
cout<<"Ignored"<<endl;
}

}

else if(s == "FORWARD")
{
if(!forward.empty())
{
cout<<forward.top()<<endl;
backward.push(forward.top());
forward.pop();
}
else
{
cout<<"Ignored"<<endl;
}
}

}

}

posted on 2012-11-20 13:52  元点之始  阅读(232)  评论(0编辑  收藏  举报

导航