From 78ca3b7dc6781912991fdc60e5385f548fd05aaa Mon Sep 17 00:00:00 2001 From: rachelrowe898 <33378713+rachelrowe898@users.noreply.github.com> Date: Wed, 13 Dec 2023 23:18:44 -0500 Subject: [PATCH] Add Java solution for 2451. Odd String Difference --- Java/odd-string-difference.java | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Java/odd-string-difference.java diff --git a/Java/odd-string-difference.java b/Java/odd-string-difference.java new file mode 100644 index 00000000..80a01ef4 --- /dev/null +++ b/Java/odd-string-difference.java @@ -0,0 +1,26 @@ +class Solution { + public String oddString(String[] words) { + int matchesFirst = 0; + int mismatchIdx = -1; + for (int i = 1; i < words.length; i++) { + if (matchesDiff(words[0], words[i])) { + matchesFirst++; + } else { + mismatchIdx = i; + } + } + if (matchesFirst == 0) { + return words[0]; + } + return words[mismatchIdx]; + } + + private static boolean matchesDiff(String a, String b) { + for (int i = 0; i < a.length() - 1; i++) { + if (a.charAt(i + 1) - a.charAt(i) != b.charAt(i + 1) - b.charAt(i)) { + return false; + } + } + return true; + } +}