国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

1051. Pop Sequence (25)

2019-11-11 06:02:45
字體:
來源:轉載
供稿:網友

1. 原題: https://www.patest.cn/contests/pat-a-PRactise/1051

2. 思路:

題意:給定入棧序列1~N,判斷給出的出棧序列是否可能。思路:數據棧的問題。直接利用stl中的棧來模擬就好了。

3. 源碼(已AC):

#include<iostream>#include<stack>using namespace std;int main(void){	//freopen("in.txt", "r", stdin);	int M, N, K;	cin >> M >> N >> K;	int num;//記錄出棧的數值	for (int i = 0; i < K; i++ )	{		int cur = 1;//由于是1~N,直接采用一個變量來記錄要入棧的值,省略隊列。		stack<int> s;		int flag = 1;		for (int j = 0; j < N; j++)		{			cin >> num;			if (flag)			{				while (s.empty() || s.top() != num)//空棧或者棧頂不等當前值,就入棧				{					s.push(cur);					cur++;					if ((int)s.size() > M)//棧滿,則不可能					{						flag = 0; 						break;					}				}				if (flag == 1 && s.top() == num)//相等則出棧					s.pop();			}		}		if (flag == 1)			cout << "YES" << endl;		else			cout << "NO/n";	}	return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 买车| 会昌县| 荣昌县| 津南区| 锡林浩特市| 府谷县| 巴东县| 特克斯县| 永丰县| 靖西县| 唐海县| 滨州市| 永兴县| 萨迦县| 拉孜县| 襄城县| 隆回县| 千阳县| 泌阳县| 阜新市| 合阳县| 财经| 青冈县| 通渭县| 鄂伦春自治旗| 利津县| 晋中市| 秭归县| 博客| 岳普湖县| 抚松县| 双鸭山市| 长治市| 阿合奇县| 犍为县| 昔阳县| 杭锦后旗| 交口县| 南靖县| 平昌县| 曲沃县|