From aa5ca180a824f0611034bd3602a8f39dac162126 Mon Sep 17 00:00:00 2001 From: Meiko-S22 Date: Thu, 3 Apr 2025 20:16:08 +0000 Subject: [PATCH 1/2] feat: adds Meiko's lesson 13 --- .../java/com/codedifferently/lesson13/Lesson13.java | 13 ++++++++++++- lesson_13/maps_ts/src/lesson13.ts | 12 +++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java b/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java index 0c981abbf..fcf75eee7 100644 --- a/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java +++ b/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java @@ -7,6 +7,17 @@ public class Lesson13 { * https://leetcode.com/problems/permutation-difference-between-two-strings */ public int findPermutationDifference(String s, String t) { - return 0; + int ans = 0; + int[] indices = new int[26]; + + for (int i = 0; i < s.length(); ++i){ + indices[s.charAt(i) - 'a'] = i; + } + + for (int i = 0; i < t.length(); ++i){ + ans += Math.abs(indices[t.charAt(i) - 'a'] - i); + } + + return ans; } } diff --git a/lesson_13/maps_ts/src/lesson13.ts b/lesson_13/maps_ts/src/lesson13.ts index 5207487e2..ee3a0d8fc 100644 --- a/lesson_13/maps_ts/src/lesson13.ts +++ b/lesson_13/maps_ts/src/lesson13.ts @@ -3,5 +3,15 @@ * https://leetcode.com/problems/permutation-difference-between-two-strings */ export function findPermutationDifference(s: string, t: string): number { - return 0; + let ans: number = 0; +let indices: number[] = new Array(26).fill(0); + +for (let i = 0; i < s.length; ++i){ + indices[s.charCodeAt(i) - 'a'.charCodeAt(0)] = i; +} + +for (let i = 0; i < t.length; ++i){ + ans += Math.abs(indices[t.charCodeAt(i) - 'a'.charCodeAt(0)] - i); +} +return ans; } From e0c0bb6a0ec4f8e1edede97a99875f24a91b11e4 Mon Sep 17 00:00:00 2001 From: Meiko-S22 Date: Thu, 3 Apr 2025 20:23:35 +0000 Subject: [PATCH 2/2] feat: adds Meiko's lesson 13 --- .../java/com/codedifferently/lesson13/Lesson13.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java b/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java index fcf75eee7..c706fbb1d 100644 --- a/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java +++ b/lesson_13/maps_java/maps_app/src/main/java/com/codedifferently/lesson13/Lesson13.java @@ -9,14 +9,14 @@ public class Lesson13 { public int findPermutationDifference(String s, String t) { int ans = 0; int[] indices = new int[26]; - - for (int i = 0; i < s.length(); ++i){ + + for (int i = 0; i < s.length(); ++i) { indices[s.charAt(i) - 'a'] = i; - } + } - for (int i = 0; i < t.length(); ++i){ + for (int i = 0; i < t.length(); ++i) { ans += Math.abs(indices[t.charAt(i) - 'a'] - i); - } + } return ans; }