Leaderboard with different lists : <p>I was just wondering, what is the best word based on this rule: (distinct letters in a word)^2 / (total letters in the word). So i started with some basic stuff</p>

<pre><code>        StreamReader SR = new StreamReader (FILE_PATH);
        int counter = 0;
        string line;

        List&lt;string&gt; words = new List&lt;string&gt; ();
        List&lt;double&gt; points = new List&lt;double&gt; ();

        while ((line = SR.ReadLine ()) != null) {
            short unique = (short)line.Distinct ().ToArray ().Length;
            short total = (short)line.Length;
            double value = (15 * Math.PI * Math.Pow (unique, 2)) / total;

            words.Add (line);
            points.Add (value);

            counter++;
        }

        int Index = points.IndexOf (points.Max ());
        Console.WriteLine ("best: " + words [Index] + " points: " + points [Index]);
    }
</code></pre>

<p>But i'd also like to have a leaderboard with the "best" words and the relative points. I have an idea in mind that would require different lists to find out the word having the points, but is there a more simple and fast way to do that?</p>
