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

int main(){
	int n,m;
	while(1){
		double x[100][100];
		double dp[101][100] = {};
		cin >> n >> m;
		if(!n) break;
		for(int i = 0;i < n;i++){
			for(int j = 0;j < n;j++){
				cin >> x[i][j];
			}
		}
		for(int i = 0;i < n;i++) dp[0][i] = 1;
		for(int i = 1;i < m;i++){
			for(int j = 0;j < n;j++){
				for(int k = 0;k < n;k++){
					dp[i][j] = max(dp[i][j],dp[i - 1][k] * x[k][j]);
				}
			}
		}
		double ma = 0;
		for(int i = 0;i < n;i++) ma = max(ma,dp[m - 1][i]);
		printf("%.2f\n",round(ma * 100.0) / 100.0);
	}
	return 0;
}