Я при решении задач, для перебора возможных значений HashMap всегда использую метод keySet(). В правильном решении почему-то всегда используют метод entrySet(). В моем понимании мой вариант лучше потому что создается множество ключей, вместо множества пар ключ-значение, тем самым вроде как меньше памяти требуется. Почему в правильном решении всегда используют именно множество пар, а не ключей?