当前位置:网站首页>Somme numérique de la chaîne de calcul pour un problème simple de leetcode
Somme numérique de la chaîne de calcul pour un problème simple de leetcode
2022-04-23 08:14:00 【La mer des étoiles】
Titre
Pour vous donner un nombre de(0 - 9)La chaîne composée s ,Et un entier.
Si s Est plus long que k ,Vous pouvez effectuer une série d'opérations.En une seule opération,Les travaux suivants doivent être effectués::
Oui. s Split Croissance à k De Groupe numérique continu ,Avant k Les caractères sont regroupés dans le premier groupe,La suite. k Les caractères sont divisés en deux groupes,Et ainsi de suite.Attention!,La longueur du dernier groupe de nombres peut être inférieure à k .
En utilisant une chaîne représentant la somme de tous les nombres dans chaque groupe de nombres Remplacer Groupe de nombres correspondant.Par exemple,“346” Sera remplacé par “13” ,Parce que 3 + 4 + 6 = 13 .
Fusionner Tous les groupes pour former une nouvelle chaîne.Si la longueur de la nouvelle chaîne est supérieure à k Répétez la première étape.
Retour à la fin de toutes les opérations de roue s .
Exemple 1:
Entrée:s = “11111222223”, k = 3
Produits:“135”
Explication:
- Première ronde,Oui. s Diviser en:“111”、“112”、“222” Et “23” .
Et voilà.,Calculer la somme des nombres pour chaque groupe:1 + 1 + 1 = 3、1 + 1 + 2 = 4、2 + 2 + 2 = 6 Et 2 + 3 = 5 .
Voilà.,s Après le premier tour “3” + “4” + “6” + “5” = “3465” . - Deuxième tour,Oui. s Diviser en:“346” Et “5” .
Et voilà.,Calculer la somme des nombres pour chaque groupe:3 + 4 + 6 = 13 、5 = 5 .
Voilà.,s Après le deuxième tour devient “13” + “5” = “135” .
Maintenant,s.length <= k ,Alors revenez. “135” Comme réponse.
Exemple 2:
Entrée:s = “00000000”, k = 3
Produits:“000”
Explication:
Oui. “000”, “000”, and “00”.
Et voilà.,Calculer la somme des nombres pour chaque groupe:0 + 0 + 0 = 0 、0 + 0 + 0 = 0 Et 0 + 0 = 0 .
s Devient “0” + “0” + “0” = “000” ,Sa longueur est égale à k ,Alors revenez. “000” .
Conseils:
1 <= s.length <= 100
2 <= k <= 100
s Uniquement les chiffres(0 - 9)Composition.
Source::Boucle de force(LeetCode)
Comment résoudre le problème
Un tel problème peut être considéré comme un retour à l'essai . En un coup d'oeil, vous pouvez voir que les sujets récursifs ont tendance à être plus faciles à écrire , Il suffit de correspondre au premier résultat pour écrire immédiatement code. Faire une chose simple à chaque niveau de récursion , C'est - à - dire assembler la chaîne entière en trois d'abord et en trois selon les besoins en une nouvelle chaîne , Il n'est pas nécessaire de se soucier de la nouvelle longueur de chaîne , La couche suivante se résout elle - même .
class Solution:
def digitSum(self, s: str, k: int) -> str:
if len(s)<=k: #Sortie récursive
return s
S,temp,count='','',0
for i in s:
temp+=i
count+=1
if count%k==0:
S+=str(sum([int(j) for j in temp]))
temp=''
if temp: #SisLa longueur n'est paskNombre entier de fois de, La queue.
S+=str(sum([int(j) for j in temp]))
s=S
return self.digitSum(s,k)
版权声明
本文为[La mer des étoiles]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230701590490.html
边栏推荐
- Go语学习笔记 - 结构体 | 从零开始Go语言
- Feign source code analysis
- 多目视觉SLAM
- PHP generates short links: convert numbers to letters and letters to numbers
- C language learning record -- use and analysis of string function (2)
- 以下程序实现从字符串str中删除第i个字符开始的连续n个字
- [极客大挑战 2019]Havefun1
- Implementation of promise all
- 【Appium】测试时遇到手机内嵌H5页面的切换问题
- [Effective Go 中文翻译]函数篇
猜你喜欢
随机推荐
Hump naming object
Flatten arrays
Draw a circle quickly in MATLAB (the one that can be drawn directly given the coordinates and radius of the center of the circle)
扎心了!一女子发朋友圈羡慕别人按时发工资被开除,连点赞的同事也一同被开除了...
[untitled]
浏览器中的 Kubernetes 和 IDE | 交互式学习平台Killercoda
DataBinding的使用五
使用 Ingress 实现金丝雀发布
Weekly leetcode - 06 array topics 7 ~ 739 ~ 50 ~ offer 62 ~ 26 ~ 189 ~ 9
[go] common concurrency model [generic version]
干货!以点为形:可微分的泊松求解器
Hierarchical output binary tree
MYSQL——第一章节(数据类型2)
利用Js实现一个千分位
Comparison of indoor positioning methods of several intelligent robots
网赚APP资源下载类网站源码
Ribbon start process
Cloud computing skills competition -- the first part of openstack private cloud environment
[appium] encountered the problem of switching the H5 page embedded in the mobile phone during the test
一款拥有漂亮外表的Typecho简洁主题_Scarfskin 源码下载