Przeglądaj źródła

New problem done

master
Lachlan Jacob 5 lat temu
rodzic
commit
1b680904bb
3 zmienionych plików z 72 dodań i 0 usunięć
  1. 25
    0
      problems/1347/main.py
  2. 44
    0
      problems/1347/problem.txt
  3. 3
    0
      problems/1347/run.sh

+ 25
- 0
problems/1347/main.py Wyświetl plik

@@ -0,0 +1,25 @@
class Solution:
def minSteps(self, s, t):
# as it's only lowercase letters, we can simply count both then compare
s_letters = [0] * 26
t_letters = [0] * 26
for a in s:
s_letters[ord(a) - 97] += 1
for a in t:
t_letters[ord(a) - 97] += 1
# we could go either way and the answer should be the same but let's turn t into s:
# we could count the deletions needed and the additions needed, and they should cancel
# out because they are equal length
# so easier to count absolute difference and then halve it.
edit = 0
for x in range(0, 26):
edit += abs(s_letters[x] - t_letters[x])
return edit // 2

s = Solution()
print("Expected: 1")
print("Got:", s.minSteps("aba", "bba"))

+ 44
- 0
problems/1347/problem.txt Wyświetl plik

@@ -0,0 +1,44 @@
Given two equal-size strings s and t. In one step you can choose any character of t and replace it with another character.

Return the minimum number of steps to make t an anagram of s.

An Anagram of a string is a string that contains the same characters with a different (or the same) ordering.


Example 1:

Input: s = "bab", t = "aba"
Output: 1
Explanation: Replace the first 'a' in t with b, t = "bba" which is anagram of s.

Example 2:

Input: s = "leetcode", t = "practice"
Output: 5
Explanation: Replace 'p', 'r', 'a', 'i' and 'c' from t with proper characters to make t anagram of s.

Example 3:

Input: s = "anagram", t = "mangaar"
Output: 0
Explanation: "anagram" and "mangaar" are anagrams.

Example 4:

Input: s = "xxyyzz", t = "xxyyzz"
Output: 0

Example 5:

Input: s = "friend", t = "family"
Output: 4


Constraints:

1 <= s.length <= 50000
s.length == t.length
s and t contain lower-case English letters only.


+ 3
- 0
problems/1347/run.sh Wyświetl plik

@@ -0,0 +1,3 @@
#!/bin/bash

python3 main.py

Ładowanie…
Anuluj
Zapisz