Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d496b22

Browse files
2021年03月02日
1 parent 2db34c8 commit d496b22

File tree

2 files changed

+9
-19
lines changed

2 files changed

+9
-19
lines changed

‎1544.整理字符串/1544-整理字符串.py‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ def makeGood(self, s):
66
"""
77
stack = []
88
for ch in s:
9-
if not stack or abs(ord(stack[-1]) - ord(ch)) != 32:
9+
if not stack or abs(ord(ch) - ord(stack[-1])) != 32:
1010
stack.append(ch)
1111
else:
1212
stack.pop()
13-
return "".join(ch for ch in stack)
13+
14+
return "".join(stack)

‎1545.找出第N个二进制字符串中的第K位/1545-找出第N个二进制字符串中的第K位.py‎

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,10 @@ def findKthBit(self, n, k):
55
:type k: int
66
:rtype: str
77
"""
8-
9-
def invert(s):
10-
res = ""
11-
for ch in s:
12-
if ch == "0":
13-
res += "1"
14-
else:
15-
res += "0"
16-
return res
17-
18-
i = 1
8+
# len 1, 3, 7, 15 ... L(n) = 2 * (L(n - 1)) + 1
9+
# if k == 2 * (n - 2) + 2: return 1
1910
s = "0"
20-
while i < n:
21-
s = s + "1" + invert(s)[::-1]
22-
i += 1
23-
if k - 1 < len(s):
24-
return s[k - 1]
25-
return s[k - 1]
11+
while len(s) <= k:
12+
s = s + "1" + "".join([str(1 - int(ch)) for ch in s])[::-1]
13+
# print (s)
14+
return s[k - 1]

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /