专栏文章

题解:UVA13055 Inception

UVA13055题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@miojpp7m
此快照首次捕获于
2025/12/02 20:19
3 个月前
此快照最后确认于
2025/12/02 20:19
3 个月前
查看原文

思路

栈的模板题。
题目中给出三种操作。
  • Sleep X
    这表示多姆要进入 XX 的梦。对应的操作是直接压入栈。
  • Kick
    这表示多姆会返回上一层梦境。对应的操作是弹出栈顶元素。
  • Test
    这表示你需要输出多姆当前正在的梦境的主人的名字。对应的操作是输出栈顶元素。注意这里不需要弹出栈顶元素。
按照思路模拟即可。

代码

CPP
#include<bits/stdc++.h>
using namespace std;
int main()
{
	int n;
	cin>>n;
	stack <string> s;
	string a;
	while(n--)
	{
		cin>>a;
		if(a=="Sleep")
		{
			cin>>a;
			s.push(a);
		}
		else if(a=="Kick")
		{
			if(!s.empty()) s.pop();
		}
		else if(a=="Test")
		{
			if(!s.empty()) cout<<s.top<<endl;
			else cout<<"Not in a dream\n";
		}
	}
	return 0;
}

评论

0 条评论,欢迎与作者交流。

正在加载评论...