aboutsummaryrefslogtreecommitdiff
path: root/find_kth_char_str_game1.py
diff options
context:
space:
mode:
authorJack Sangdahl <[email protected]>2025-07-02 18:28:10 -0600
committerJack Sangdahl <[email protected]>2025-07-02 18:28:10 -0600
commitcd518a4b7fb4fb8276751af7c0d7294389f34632 (patch)
tree08579b44b4032835fb3bac311ef9a2621edf1cbc /find_kth_char_str_game1.py
parent0d48f3681fc9ee8ef96d05537214aaf5d200927b (diff)
downloadleetcode-cd518a4b7fb4fb8276751af7c0d7294389f34632.tar.gz
leetcode-cd518a4b7fb4fb8276751af7c0d7294389f34632.zip
3304. find the kth character in string game 1
Diffstat (limited to 'find_kth_char_str_game1.py')
-rw-r--r--find_kth_char_str_game1.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/find_kth_char_str_game1.py b/find_kth_char_str_game1.py
new file mode 100644
index 0000000..6b24764
--- /dev/null
+++ b/find_kth_char_str_game1.py
@@ -0,0 +1,26 @@
+# 3304. Find the K-th Character in String Game I
+
+"""
+alice and bob are playing a game. initially, alice has a string 'word = "a"'.
+you are given a positive integer 'k'. now, bob will ask alice to perform the
+following operation forwever: generate a new string by changing each
+character in 'word' to its next character in the english alphabet and append
+it to the original 'word'. return the value of the k'th character in 'word'
+after enough operations have been done for 'word' to have at least 'k'
+characters. note that character 'z' can be changed to 'a' in the operation.
+"""
+
+
+class Solution(object):
+ def kthCharacter(self, k):
+ """
+ :type k: int
+ :rtype: str
+ """
+ return chr(ord("a") + (k - 1).bit_count())
+
+
+if __name__ == "__main__":
+ obj = Solution()
+ print(obj.kthCharacter(k=5))
+ print(obj.kthCharacter(k=10))