当前位置:网站首页>Simulation volume leetcode [general] 1405 Longest happy string
Simulation volume leetcode [general] 1405 Longest happy string
2022-07-06 06:18:00 【Encounter simulation volume】
Summary : Simulation volume Leetcode Summary of questions
1405. The longest happy string
If the string does not contain any ‘aaa’,‘bbb’ or ‘ccc’ Such a string is used as a substring , Then the string is a 「 Happy string 」.
Here are three integers a,b ,c, Please return Any one A string that satisfies all of the following conditions s:
s Is a happy string as long as possible .
s in most Yes a Letters ‘a’、b Letters ‘b’、c Letters ‘c’ .
s It only contains ‘a’、‘b’ 、‘c’ Three letters .
If such a string does not exist s , Please return an empty string “”.
Example 1:
Input :a = 1, b = 1, c = 7
Output :“ccaccbcc”
explain :“ccbccacc” It is also a correct answer .
Example 2:
Input :a = 2, b = 2, c = 1
Output :“aabbc”
Example 3:
Input :a = 7, b = 1, c = 0
Output :“aabaa”
explain : This is the only correct answer to the test case .
Tips :
0 <= a, b, c <= 100
a + b + c > 0
source : Power button (LeetCode)
link :https://leetcode-cn.com/problems/longest-happy-string
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Code :
from leetcode_python.utils import *
class Solution:
def longestDiverseString(self, a: int, b: int, c: int) -> str:
cnt = {
'a':a,'b':b,'c':c}
res = ''
while True:
_,mid,most = sorted(cnt.keys(),key=lambda x:cnt[x])
if (len(res)<2 or not res[-2]==res[-1]==most) and cnt[most]:
res+=most
cnt[most]-=1
elif cnt[mid]:
res+=mid
cnt[mid]-=1
else:
break
return res
def test(data_test):
s = Solution()
data = data_test # normal
# data = [list2node(data_test[0])] # list turn node
return s.longestDiverseString(*data)
def test_obj(data_test):
result = [None]
obj = Solution(*data_test[1][0])
for fun, data in zip(data_test[0][1::], data_test[1][1::]):
if data:
res = obj.__getattribute__(fun)(*data)
else:
res = obj.__getattribute__(fun)()
result.append(res)
return result
if __name__ == '__main__':
datas = [
[],
]
for data_test in datas:
t0 = time.time()
print('-' * 50)
print('input:', data_test)
print('output:', test(data_test))
print(f'use time:{
time.time() - t0}s')
remarks :
GitHub:https://github.com/monijuan/leetcode_python
CSDN Summary : Simulation volume Leetcode Summary of questions
You can add QQ Group communication :1092754609
leetcode_python.utils See the description on the summary page for details
First brush questions , Then generated by script blog, If there is any mistake, please leave a message , I see it will be revised ! thank you !
边栏推荐
猜你喜欢
单元测试的意义
P问题、NP问题、NPC问题、NP-hard问题详解
在uni-app中使用腾讯视频插件播放视频
Manhattan distance and Manhattan rectangle - print back font matrix
D - How Many Answers Are Wrong
What are the test sites for tunnel engineering?
【C语言】字符串左旋
Buuctf-[bjdctf2020]zjctf, but so (xiaoyute detailed explanation)
【Tera Term】黑猫带你学TTL脚本——嵌入式开发中串口自动化神技能
Summary of anomaly detection methods
随机推荐
Construction and integration of Zipkin and sleuth for call chain monitoring
Database isolation level
E - 食物链
黑猫带你学UFS协议第4篇:UFS协议栈详解
Left matching principle of joint index
The latest 2022 review of "graph classification research"
曼哈顿距离和-打印菱形
Database - current read and snapshot read
模拟卷Leetcode【普通】1414. 和为 K 的最少斐波那契数字数目
[C language] qsort function
一文揭开,测试外包公司的真 相
Qt:无法定位程序输入点XXXXX于动态链接库。
Testing of web interface elements
Understanding of processes and threads
E - food chain
【无App Push 通用测试方案
Coordinatorlayout+nestedscrollview+recyclerview pull up the bottom display is incomplete
IP day 16 VLAN MPLS configuration
Isam2 operation process
联合索引的左匹配原则