#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<cmath>
using namespace std;

int main(){
  int n,m;
  double In;
 
  while(cin >> n >> m && n && m){
    vector<double> matrix[n+2];
  
    for(int i=0;i<n;i++){
      for(int j=0;j<n;j++){
	cin >> In;
	matrix[i].push_back(In);
      }
    }
    double dp[n+2][m+2];//選んだもの、回数
    for(int i=0;i<n;i++){
      dp[i][0] = dp[i][1] = 1.0; 
      for(int j=2;j<=m;j++){
	dp[i][j] = -1.0;
      }
    }

    for(int i=0;i<n;i++){
      for(int j=2;j<=m;j++){
	for(int k=0;k<n;k++){
	  dp[i][j] = max(dp[i][j],dp[i][j-1]*matrix[i][k]);
	}
      }
    }
    double ans = -1;
    for(int I=0;I<n;I++)ans = max(ans,dp[I][m]);
    printf("%.2f\n",ans);

  }
  return 0;
}