Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
48241 MattL 【AB-1】游戏 C++ 通过 100 0 MS 256 KB 1496 2022-04-11 11:13:01

Tests(10/10):


#include <bits/stdc++.h> using namespace std; int a[110],n,minn,maxx,id; bool who=true,you1,other;//true Alice false Bob int dfs(int k,bool shei) { if(k==1) for(int i=1;i<=n;i++) if(a[i]>=0) return a[i]; if(shei) { int Max=INT_MIN,lst=-1,lsti,tt; for(int i=1;i<=n;i++) if(a[i]!=-1) { if(lst!=-1) if(a[i]>lst) tt=a[i],a[i]=-1,Max=max(Max,dfs(k-1,shei^1)),a[i]=tt; else tt=a[lsti],a[lsti]=-1,Max=max(Max,dfs(k-1,shei^1)),a[lsti]=tt; lst=a[i],lsti=i; } return Max; } else { int Min=INT_MAX,lst=-1,lsti,tt; for(int i=1;i<=n;i++) if(a[i]!=-1) { if(lst!=-1) if(a[i]<lst) tt=a[i],a[i]=-1,Min=min(Min,dfs(k-1,shei^1)),a[i]=tt; else tt=a[lsti],a[lsti]=-1,Min=min(Min,dfs(k-1,shei^1)),a[lsti]=tt; lst=a[i],lsti=i; } return Min; } } int main() { // freopen("game.in","r",stdin); // freopen("game.out","w",stdout); scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d",a+i),other|=(a[i]>1),you1|=(a[i]==1); if(n&1) cout<<max(a[1],a[n])<<endl; else cout<<min(a[1],a[n])<<endl; return 0; }


测评信息: