#!/usr/bin/env perl use warnings; use strict; use Test::More; is solve("FOO\nBAR\nOOF\n", ['FOO']), 'BAR'; my $INPUT1 = <<'_X_'; BFOO AQUZ ROOF _X_ my @WORDS1 = qw/ FOO BAR /; is solve($INPUT1, \@WORDS1), 'QUZ'; # more test cases here! done_testing; sub solve { my ($grid, $words) = @_; my $solution = "..."; # your algorithm here! return $solution; }