File tree 2 files changed +51
-0
lines changed
2 files changed +51
-0
lines changed Original file line number Diff line number Diff line change
1
+ class Solution (object ):
2
+ def maxNumberOfBalloons (self , text ):
3
+ """
4
+ :type text: str
5
+ :rtype: int
6
+ """
7
+ dic = collections .Counter (text )
8
+ #balloon
9
+ min_count = 99999999
10
+ for char in "balon" :
11
+ tmp = dic [char ]
12
+ if char in "lo" :
13
+ tmp /= 2
14
+ min_count = min (min_count , tmp )
15
+ return min_count
Original file line number Diff line number Diff line change
1
+ class Solution (object ):
2
+ def kConcatenationMaxSum (self , arr , k ):
3
+ """
4
+ :type arr: List[int]
5
+ :type k: int
6
+ :rtype: int
7
+ """
8
+ if max (arr ) < 0 :
9
+ return 0
10
+ if sum (arr ) > 0 :
11
+ res = sum (arr ) * (k - 2 )
12
+ dp = [0 ] * len (arr )
13
+ dp [0 ] = arr [0 ]
14
+ for i in range (1 ,len (arr )):
15
+ dp [i ] = dp [i - 1 ] + arr [i ]
16
+
17
+ res += max (dp )
18
+ dp = [0 ] * len (arr )
19
+ dp [- 1 ] = arr [- 1 ]
20
+ for i in range (len (arr ) - 2 , - 1 , - 1 ):
21
+ dp [i ] = dp [i + 1 ] + arr [i ]
22
+
23
+ res += max (dp )
24
+ return (res )% (10 ** 9 + 7 )
25
+
26
+ arr = arr + arr
27
+ dp = [0 ] * len (arr )
28
+ dp [0 ] = arr [0 ]
29
+ for i in range (1 ,len (arr )):
30
+ if dp [i - 1 ] > 0 :
31
+ dp [i ] = dp [i - 1 ] + arr [i ]
32
+ else :
33
+ dp [i ] = arr [i ]
34
+
35
+ return max (dp ) % (10 ** 9 + 7 )
36
+
You can’t perform that action at this time.
0 commit comments