How can I make a scoretable in which players with the same puntuatio have the same rate?

I am doing a game similar to Mario Party, but I have a problem and I don’t know how to solve it. The problem is how can I make a scoretable in which players with the same puntuatio have the same rate?
It´s a four local multiplayer game, of course.

For example:
Player1 score 60
Player 2 score 30
Player 3 score 20
Player 4 score 30

I want to have for player 1 in first 100points
player 2 and 4 in third position with 50 points
player 3 in fourth postion with 25 points

Here is my sample code

    private List<HighscoreEntry> highScoreEntryList;//scoretable list

    public void AddToList()
    {
//add score
        highScoreEntryList = new List<HighscoreEntry>() {
            new HighscoreEntry{score = player1score, name = "Player1" },
            new HighscoreEntry{score = player2score, name = "Player2" },
            new HighscoreEntry{score = player3score, name = "Player3" },
            new HighscoreEntry{score = player4score, name = "Player4" }
        };
//order puntuations
        for (int i = 0; i < highScoreEntryList.Count; i++) {
            for (int j = i + 1; j < highScoreEntryList.Count; j++)
            {
                if (highScoreEntryList[j].score > highScoreEntryList*.score)*

{
HighscoreEntry tmp = highScoreEntryList*;*
highScoreEntryList = highScoreEntryList[j];
highScoreEntryList[j] = tmp;
}
}
}

}

private class HighscoreEntry //class for the list
{
public int score;
public string name;
}

I tried to do it with this code:

        highScoreEntryList = new List<HighscoreEntry>() {
            new HighscoreEntry{score = player1score, name = "Player1" },
            new HighscoreEntry{score = player2score, name = "Player2" },
            new HighscoreEntry{score = player3score, name = "Player3" },
            new HighscoreEntry{score = player4score, name = "Player4" }
        };

        //order the puntuation
        for (int i = 0; i < highScoreEntryList.Count; i++)
        {
            for (int j = i + 1; j < highScoreEntryList.Count; j++)
            {
                if (highScoreEntryList[j].score > highScoreEntryList*.score)*

{
HighscoreEntry tmp = highScoreEntryList*;*
highScoreEntryList = highScoreEntryList[j];
highScoreEntryList[j] = tmp;
}
}
}

for (int i = 0,tmp = 0; i < highScoreEntryList.Count; i++)
{
for (int j = i + 1; highScoreEntryList*.score == highScoreEntryList[j].score; j++)*
{
tmp++;
iqual = true;
}
if (iqual == true)
{
for (int j = i; j <= tmp; j++)
{
if (tmp==1)
{
highScoreEntryList[j].score = 75;
}
else if (tmp == 2)
{
highScoreEntryList[j].score = 50;
}
else if (tmp == 3)
{
highScoreEntryList[j].score = 25;
}
iqual = false;
}
} else if (iqual == false)
{
if (i==0)
{
highScoreEntryList[0].score = 125;
}else if (i == 1)
{
highScoreEntryList[1].score = 75;
}
else if (i == 2)
{
highScoreEntryList[2].score = 50;
}
else if (i == 3)
{
highScoreEntryList[3].score = 25;
}

tmp++;
}
i = tmp-1;

}