Собственно, по-моему исходя из кода логика правильная, но постоянно сыпется с concurrentmodificationexception. Вроде как через итератор же можно модифицировать коллекцию, не? В общем укажите путь, если кто может.
package com.javarush.task.task08.task0817;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;

/*
Нам повторы не нужны
*/

public class Solution {
    public static HashMap<String, String> createMap() {
        //напишите тут ваш код
        HashMap<String,String> nameSurname = new HashMap<>();
        while (nameSurname.size()<10)
        {
            String name = "Name" + (int) (Math.random() * 10);
            String surname = "Surname" + (int) (Math.random() * 10);
            nameSurname.put(surname,name);
        }
        return nameSurname;
    }

    public static void removeTheFirstNameDuplicates(Map<String, String> map) {
        //напишите тут ваш код

        for (String name:
             map.values()) {
            removeItemFromMapByValue(map,name);

        }




    }

    public static void removeItemFromMapByValue(Map<String, String> map, String value) {
        Iterator<Map.Entry<String,String>> mapIterator = map.entrySet().iterator();
        while (mapIterator.hasNext())
        {
            if(mapIterator.next().getValue().equals(value) )
            {
                mapIterator.remove();
            }
        }
    }

    public static void main(String[] args) {
        HashMap<String,String> hm = createMap();
        removeTheFirstNameDuplicates(hm);
        System.out.println("End");

    }
}