能有大佬帮忙找找问题吗(不太想浪费下载次数),悬一关
#include<bits/stdc++.h>
using namespace std;
int n,a[25],b[25][25],ma,s,ss;
long long maxn;
vector<int> ans[25];
int main(){
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
ans[i].push_back(i);
}
maxn=a[n];
for(int i=1;i<=n-1;i++)
{
for(int j=1;j<=n-i;j++)
{
cin>>b[i][j];
}
}
for(int i=n-1;i>=1;i--)
{
ma=-1;
for(int j=1;j<=n-i;j++)
{
if(b[i][j]==1)
{
// ma=max(ma,a[i+j]);
if(a[i+j]>ma)
{
ma=a[i+j];
ss=i+j;
}
}
}
for(int o=0;o<ans[ss].size();o++)
{
if(ss==0) break;
ans[i].push_back(ans[ss][o]);
}
if(ma!=-1) a[i]+=ma;
// maxn=max(a[i],maxn);
if(a[i]>maxn)
{
maxn=a[i];
s=i;
}
ss=0;
}
for(int i=0;i<ans[s].size();i++)
{
cout<<ans[s][i]<<" ";
}
cout<<endl<<maxn;
}