#include<bits/stdc++.h>
#define r(i,n) for(int i=0;i<n;i++)
#define fi first
#define se second
using namespace std;
typedef pair<int,int> P;
int n,score[101],a[101][3];


bool ch(){

  int t[101]={},x[101];
  r(i,3){
    int cnt=0,pre,c2=0;
    memset(x,0,sizeof(x));
    
    vector<P> v;
    
    r(j,n)v.push_back(P(a[j][i],j));
    
    sort(v.begin(),v.end(), greater<P>() );
    
    r(k,n){
      if(!k){
	t[v[k].se]+=score[cnt];
	pre=v[k].fi;
      }
      else{
	if(pre==v[k].fi){
	  c2++;
	  t[v[k].se]+=score[cnt];
	}
	else{
	  pre=v[k].fi;
	  cnt+=c2+1;c2=0;
	  t[v[k].se]+=score[cnt];
	}
      }
    }
    
   }

  vector<P> v;
    
  r(j,n)v.push_back(P(t[j],j));
    
  sort(v.begin(),v.end(), greater<P>() );
  int cnt=0,c2=0,pre;
  r(i,n){
    if(!i){

      if(!v[i].se&&cnt<=7)return 1;
      
      pre=v[i].fi;
    }
    else{
      if(pre==v[i].fi){
        if(!v[i].se&&cnt<=7)return 1;
        pre=v[i].fi;
        c2++;
      }
       else{
        cnt+=c2+1;c2=0;
        if(!v[i].se&&cnt<=7)return 1;
        pre=v[i].fi;
      }
    }
  }
  return 0;
}




int main(){
  cin>>n;
  r(i,n)cin>>score[i];
  r(i,n)r(j,3)cin>>a[i][j];
  r(i,1000)r(j,3){
    a[0][j]+=i;
    if(ch()){
      cout<<i<<endl;
      return 0;
    }
    a[0][j]-=i;
  }
  cout<<"Saiko"<<endl;
}