填坑Ⅱ
題目資訊
emmm,還是北湖深坑,不用驚喜,不用意外
我們繼續用石頭填!
北湖的地面依舊是一維的,每一塊寬度都為1,高度是非負整數,用一個陣列來表示。
還是提供不限量的 1 乘號 2 規格的石頭。
但是這一次是 DarkDawn 來填坑,他有很強烈的強迫症,所有的石頭只能水平擺放(寬為2,高為1)。
問這樣是否可以將北湖填平。(所有地面到達同一高度即為填平)
輸入
樣例有多組輸入至檔案末尾;
每組用例佔兩行;
第一行輸入1個整數 n (1 ≤ n ≤ 2*10^5)
表示北湖地面總寬度;
第二行輸入 n 個整數 a ( 0 ≤ a ≤ 1e9)
,用空格間隔,表示地面高度。
輸出
若能填平則輸出“YES”,否則輸出“NO”。
測試樣例
5
2 1 1 2 5
3
4 5 3
3
1 2 3
YES
NO
NO
解答
#include <cstring>
#include <iostream>
#include <stack>
#define ll long long
using namespace std;
int main()
{
//ios::sync_with_stdio(false);
//freopen("E://test.txt", "r", stdin);
//freopen("E://out.txt", "w", stdout);
int T;
while (scanf("%d", &T) != EOF)
{
int MAX = 0;
int num[1000000];
for (int i = 0; i < T; i++)
{
scanf("%lld", &num[i]);
if (num[i] >= MAX)
{
MAX = num[i];
}
}
stack<ll> s;
int op = 0;
for (int i = 0; i < T; i++)
{
if (s.empty())
{
s.push(num[i]);
}
else if (num[i] > s.top())
{
op = 1;
}
else if (num[i] == s.top())
{
s.pop();
}
else
{
s.push(num[i]);
}
}
if (op == 1)
{
printf("NO\n");
}
else if (s.size() == 0)
{
printf("YES\n");
}
else if (s.size() == 1)
{
if (s.top() == MAX)
{
printf("YES\n");
}
else
{
printf("NO\n");
}
}
else if (s.size() > 1)
{
printf("NO\n");
}
}
return 0;
}
本題目的前序題目如下:
填坑Ⅰ
相關文章
- streamparse 填坑
- Hibernate填坑
- compilephpwithopensslonmacosxerror填坑CompilePHPMacError
- 小程式踩坑填坑
- Flutter 填坑整理Flutter
- vim 填坑之路
- Date填坑記
- Elasticsearch 填坑記Elasticsearch
- Flutter for web 最新填坑FlutterWeb
- 05-待填坑...
- 小程式花式填坑
- 【轉載】MapStruct使用填坑Struct
- React Native填坑之旅--GraphQLReact Native
- OpenJFX編譯填坑之路編譯
- Flutter填坑全面總結Flutter
- Java填坑系列之LinkedListJava
- minikube windows hyperx填坑記Windows
- 小程式填坑實錄
- 填坑-關於IIC通訊
- Flutter go-flutter desktop 填坑FlutterGo
- PostgreSql安裝教程(填坑版!)SQL
- vue 填坑系列總結——scopedVue
- 微信小程式填坑心路微信小程式
- Next.js踩坑入門系列(四)— 中期填坑JS
- GPLv2 的坑,OIN 來填
- React Native填坑之旅 -- What's nextReact Native
- 很簡單的Flutter填小坑Flutter
- 微信小程式填坑清單微信小程式
- 如何避免前人挖坑,後人填坑
- iOS初學之填坑總結iOS
- 填坑-十萬個為什麼?(15)
- Android•Lottie動畫庫填坑記Android動畫
- 【git實際應用填坑解決】Git
- 金科股份,難以填滿的坑?
- React Native填坑之旅--開啟TurboModule(Android)React NativeAndroid
- Flutter Plugin外掛開發填坑指南FlutterPlugin
- Flutter填坑筆記: dio報錯 FormatExceptionFlutter筆記ORMException
- Springboot+Neo4j+實戰&填坑Spring Boot