提交时间:2022-04-10 16:04:51

运行 ID: 48192

#include <bits/stdc++.h> using namespace std; int minn,maxn,n,now,opt=1,Max,Min,f=1; vector<int>a(105,0); inline void A() { maxn=0x7ffffff; for(int i(0); i < now - 1; i++) if(max(a[i], a[i+1]) < maxn) maxn = max(a[i],a[i+1]),Max = a[i] > a[i+1] ? i : i + 1; a.erase(a.begin() + Max); } inline void B() { maxn = -1; for(int i(0); i < now - 1; i++) if(min(a[i], a[i+1]) > minn) minn = min(a[i], a[i+1]),Min = a[i] < a[i+1] ? i : i + 1; a.erase(a.begin() + Min); } void solve() { scanf("%d", &n); for(int i(0); i < n; i++) scanf("%d", &a[i]); for(int i(0); i < n; i++) if(a[i] != 0) f = 0; now = n; while(now > 1) { if(opt == 1) A(); else B(); opt == 1 ? opt = 0 : opt = 1, now--; Max = Min = 0; } if(f == 1) puts("0"); else printf("%d\n", a[0]); } int main() { // freopen("game.in","r",stdin); //freopen("game.out","w",stdout); solve(); return 0; }