using System;
public class Test
{
public static void Main()
{
PuzzleKata puzzle = new PuzzleKata();
Console.Write("Cari Koordinates untuk kata : ");
string input = Console.ReadLine();
PuzzleKata puzzleKata = new PuzzleKata();
var result = puzzleKata.CariKata(input);
foreach (var koordinat in result)
Console.WriteLine($"[{koordinat.Item1}, {koordinat.Item2}]");
}
class PuzzleKata
{
private char[,] papan = new char[17, 17]
{
{'J','Y','B','Y','Q','V','W','G','B','Q','F','D','D','U','L','H','M'},
{'D','G','O','C','G','V','N','K','Z','C','R','U','B','A','O','I','K'},
{'U','G','E','U','H','E','W','J','W','T','O','Y','N','U','M','N','V'},
{'N','H','U','R','D','B','R','J','I','V','U','I','T','P','G','H','W'},
{'I','H','H','O','O','I','E','M','Z','W','T','J','M','D','T','S','V'},
{'T','M','V','O','I','P','O','U','A','N','B','E','D','X','T','W','X'},
{'E','Z','H','B','B','Q','A','U','E','N','W','C','W','C','B','O','N'},
{'D','L','U','S','A','D','F','G','N','R','Y','Y','G','W','W','S','R'},
{'K','H','Y','I','I','R','R','M','N','I','P','H','A','B','R','W','P'},
{'I','T','Q','M','S','A','H','I','M','I','R','U','N','Z','Y','H','S'},
{'N','E','T','H','E','R','L','A','N','D','S','H','U','N','K','E','Z'},
{'G','F','K','L','N','L','A','G','U','T','R','O','P','B','I','U','E'},
{'D','C','P','G','O','G','G','A','R','U','P','U','E','O','P','K','M'},
{'O','J','B','T','D','N','T','A','X','O','B','X','Z','M','J','C','C'},
{'M','J','F','P','N','S','L','L','X','B','V','C','Y','W','T','K','E'},
{'R','X','I','S','I','I','Z','W','A','M','K','S','L','N','H','V','S'},
{'A','O','J','O','A','E','G','T','X','M','C','Z','P','C','I','O','U'}
};
public List<(int, int)> CariKata(string kata)
{
int rows = papan.GetLength(0);
int cols = papan.GetLength(1);
int lenStr = kata.Length;
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
}
}
return new List<(int, int)>();
}
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIGNsYXNzIFRlc3QKewoJcHVibGljIHN0YXRpYyB2b2lkIE1haW4oKQoJewogICAgICAgIFB1enpsZUthdGEgcHV6emxlID0gbmV3IFB1enpsZUthdGEoKTsKICAgICAgICBDb25zb2xlLldyaXRlKCJDYXJpIEtvb3JkaW5hdGVzIHVudHVrIGthdGEgOiAiKTsKICAgICAgICBzdHJpbmcgaW5wdXQgPSBDb25zb2xlLlJlYWRMaW5lKCk7CgogICAgICAgIFB1enpsZUthdGEgcHV6emxlS2F0YSA9IG5ldyBQdXp6bGVLYXRhKCk7CiAgICAgICAgdmFyIHJlc3VsdCA9IHB1enpsZUthdGEuQ2FyaUthdGEoaW5wdXQpOwoKICAgICAgICBmb3JlYWNoICh2YXIga29vcmRpbmF0IGluIHJlc3VsdCkKICAgICAgICAgICAgQ29uc29sZS5Xcml0ZUxpbmUoJCJbe2tvb3JkaW5hdC5JdGVtMX0sIHtrb29yZGluYXQuSXRlbTJ9XSIpOwoJfQoKIGNsYXNzIFB1enpsZUthdGEgCgl7CgkgICAgcHJpdmF0ZSBjaGFyWyxdIHBhcGFuID0gbmV3IGNoYXJbMTcsIDE3XQoJICAgIHsKCSAgICAgICAgeydKJywnWScsJ0InLCdZJywnUScsJ1YnLCdXJywnRycsJ0InLCdRJywnRicsJ0QnLCdEJywnVScsJ0wnLCdIJywnTSd9LAoJICAgICAgICB7J0QnLCdHJywnTycsJ0MnLCdHJywnVicsJ04nLCdLJywnWicsJ0MnLCdSJywnVScsJ0InLCdBJywnTycsJ0knLCdLJ30sCgkgICAgICAgIHsnVScsJ0cnLCdFJywnVScsJ0gnLCdFJywnVycsJ0onLCdXJywnVCcsJ08nLCdZJywnTicsJ1UnLCdNJywnTicsJ1YnfSwKCSAgICAgICAgeydOJywnSCcsJ1UnLCdSJywnRCcsJ0InLCdSJywnSicsJ0knLCdWJywnVScsJ0knLCdUJywnUCcsJ0cnLCdIJywnVyd9LAoJICAgICAgICB7J0knLCdIJywnSCcsJ08nLCdPJywnSScsJ0UnLCdNJywnWicsJ1cnLCdUJywnSicsJ00nLCdEJywnVCcsJ1MnLCdWJ30sCgkgICAgICAgIHsnVCcsJ00nLCdWJywnTycsJ0knLCdQJywnTycsJ1UnLCdBJywnTicsJ0InLCdFJywnRCcsJ1gnLCdUJywnVycsJ1gnfSwKCSAgICAgICAgeydFJywnWicsJ0gnLCdCJywnQicsJ1EnLCdBJywnVScsJ0UnLCdOJywnVycsJ0MnLCdXJywnQycsJ0InLCdPJywnTid9LAoJICAgICAgICB7J0QnLCdMJywnVScsJ1MnLCdBJywnRCcsJ0YnLCdHJywnTicsJ1InLCdZJywnWScsJ0cnLCdXJywnVycsJ1MnLCdSJ30sCgkgICAgICAgIHsnSycsJ0gnLCdZJywnSScsJ0knLCdSJywnUicsJ00nLCdOJywnSScsJ1AnLCdIJywnQScsJ0InLCdSJywnVycsJ1AnfSwKCSAgICAgICAgeydJJywnVCcsJ1EnLCdNJywnUycsJ0EnLCdIJywnSScsJ00nLCdJJywnUicsJ1UnLCdOJywnWicsJ1knLCdIJywnUyd9LAoJICAgICAgICB7J04nLCdFJywnVCcsJ0gnLCdFJywnUicsJ0wnLCdBJywnTicsJ0QnLCdTJywnSCcsJ1UnLCdOJywnSycsJ0UnLCdaJ30sCgkgICAgICAgIHsnRycsJ0YnLCdLJywnTCcsJ04nLCdMJywnQScsJ0cnLCdVJywnVCcsJ1InLCdPJywnUCcsJ0InLCdJJywnVScsJ0UnfSwKCSAgICAgICAgeydEJywnQycsJ1AnLCdHJywnTycsJ0cnLCdHJywnQScsJ1InLCdVJywnUCcsJ1UnLCdFJywnTycsJ1AnLCdLJywnTSd9LAoJICAgICAgICB7J08nLCdKJywnQicsJ1QnLCdEJywnTicsJ1QnLCdBJywnWCcsJ08nLCdCJywnWCcsJ1onLCdNJywnSicsJ0MnLCdDJ30sCgkgICAgICAgIHsnTScsJ0onLCdGJywnUCcsJ04nLCdTJywnTCcsJ0wnLCdYJywnQicsJ1YnLCdDJywnWScsJ1cnLCdUJywnSycsJ0UnfSwKCSAgICAgICAgeydSJywnWCcsJ0knLCdTJywnSScsJ0knLCdaJywnVycsJ0EnLCdNJywnSycsJ1MnLCdMJywnTicsJ0gnLCdWJywnUyd9LAoJICAgICAgICB7J0EnLCdPJywnSicsJ08nLCdBJywnRScsJ0cnLCdUJywnWCcsJ00nLCdDJywnWicsJ1AnLCdDJywnSScsJ08nLCdVJ30KCSAgICB9OwoJICAgIHB1YmxpYyBMaXN0PChpbnQsIGludCk+IENhcmlLYXRhKHN0cmluZyBrYXRhKQoJICAgIHsKCSAgICAgICAgaW50IHJvd3MgPSBwYXBhbi5HZXRMZW5ndGgoMCk7CgkgICAgICAgIGludCBjb2xzID0gcGFwYW4uR2V0TGVuZ3RoKDEpOwoJICAgICAgICBpbnQgbGVuU3RyID0ga2F0YS5MZW5ndGg7CgkKCSAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCByb3dzOyBpKyspCgkgICAgICAgIHsKCSAgICAgICAgICAgIGZvciAoaW50IGogPSAwOyBqIDwgY29sczsgaisrKQoJICAgICAgICAgICAgewoJICAgICAgICAgICAgfQoJICAgICAgICB9CgkKCSAgICAgICAgcmV0dXJuIG5ldyBMaXN0PChpbnQsIGludCk+KCk7CgkgICAgfQoJfQp9CgoK