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

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

Stack ? Queue ? [水題]

2019-11-06 06:23:29
字體:
來源:轉載
供稿:網友

給定n個元素的輸入順序和輸出順序,需要你判定這是一個棧還是隊列?

輸入 有多組測試數據。

每組數據第一行有一個整數n,表示元素個數。

第二行有n個整數,表示輸入順序,第三行有n個整數,表示輸出順序。

后臺數據保證2 <= n <= 10,給定的n個元素均不相同。

輸出 若有可能是一個隊列的操作,則輸出0。

若是一個棧的操作,則輸出1。

數據保證有解。

樣例輸入 2 1 2 2 1 3 2 1 3 2 3 1 3 1 2 3 1 2 3 樣例輸出 1 1 0

#include<cstdio>#include<cstring>#include<cmath>#include<stack>#include<queue>#include<algorithm>using namespace std;#define INF 0x3f3f3f3f#define ll long longint main(){ int n; while (~scanf("%d",&n)){ queue<int> s; int a[20]; int b[20]; for (int i= 0; i < n; ++i){ scanf("%d",&a[i]); } for (int i= 0; i < n; ++i){ scanf("%d",&b[i]); } int k = 0; for (int i= 0; i < n; ++i){ if (a[i] == b[i]){ k++; while (!s.empty()){ if (s.front() == b[k]){ s.pop(); k++; } else break; } } else s.push(a[i]); } if (s.empty()) 隊列 先入先出 判斷每個數組元素是否相等即可 這是一道水題 完全沒必要在競賽的情況下小題大做 一定要好好理解這些算法


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 抚顺市| 大姚县| 湖口县| 襄城县| 太和县| 岫岩| 临泽县| 红安县| 屏东市| 科尔| 彰化市| 蒙自县| 高州市| 青铜峡市| 清涧县| 安达市| 南漳县| 靖州| 科尔| 攀枝花市| 客服| 集贤县| 饶河县| 越西县| 武隆县| 治多县| 荥阳市| 丰原市| 江源县| 自治县| 南汇区| 山阳县| 偏关县| 武胜县| 格尔木市| 万源市| 新巴尔虎左旗| 青神县| 浑源县| 桃江县| 木兰县|