diff --git a/src/main/java/hackerRank/week1/LonelyInteger.java b/src/main/java/hackerRank/week1/LonelyInteger.java
index ff35e6f..8dc80af 100644
--- a/src/main/java/hackerRank/week1/LonelyInteger.java
+++ b/src/main/java/hackerRank/week1/LonelyInteger.java
@@ -11,21 +11,19 @@ public class LonelyInteger {
 
     public int lonelyInteger(List<Integer> a) {
 
-        Set<Integer> integerSet = new HashSet<>();
-
-        long listSum = 0;
-        long setSum = 0;
-
-        for (Integer i : a) {
-            integerSet.add(i);
-            listSum += i;
-        }
-
-        for (Integer i : integerSet) {
-            setSum += i;
+        Set<Integer> buffer = new HashSet<>();
+        int sum = 0;
+        int sumOfUniqueElements = 0;
+
+        for (int i : a) {
+            sum += i;
+            if (!buffer.contains(i)) {
+                sumOfUniqueElements += i;
+                buffer.add(i);
+            }
         }
 
-        return Long.valueOf((2 * setSum) - listSum).intValue();
+        return (2 * sumOfUniqueElements) - sum;
 
     }
 
diff --git a/src/test/java/hackerRank/week1/LonelyIntegerTest.java b/src/test/java/hackerRank/week1/LonelyIntegerTest.java
index 36ca160..deacdcb 100644
--- a/src/test/java/hackerRank/week1/LonelyIntegerTest.java
+++ b/src/test/java/hackerRank/week1/LonelyIntegerTest.java
@@ -17,6 +17,10 @@ public void test() {
 
         Assertions.assertEquals(4, r);
 
+        r = lonelyInteger.lonelyInteger(List.of(1, 2, 3, 4, 5, 1, 2, 3, 4));
+
+        Assertions.assertEquals(5, r);
+
     }
 
 }