计算要拆分的字符串的最大偶数长度

Calculate max even lengths of a string to be split

本文关键字:拆分 字符串 计算      更新时间:2023-10-16

我知道我想要什么,但我不知道是否有这个技术名称,也不知道如何计算它。

假设我有一个字符串:

ABCDEFGHI

此字符串可以平均拆分为每个子字符串3个字符的"MAXIMUM"。

基本上,我想知道如何将一根绳子平均分成最大的子长度。一个由25个字符组成的字符串可以均匀地分成5个部分,每个部分由5个字符组成。如果我试着把它分成4或6块,我会有一根奇数长度的绳子(一根大小与其他绳子不同的绳子)。

  • 一个由9个字符组成的字符串只能分为3个部分,每个部分3个字符
  • 一个由10个字符组成的字符串只能拆分为两个部分,每个部分5个字符
  • 一个25个字符的字符串可以分为5个部分,每个部分5个字符
  • 一个15个字符的字符串可以分成3个,每个5个字符,或者5个,每个3个字符
  • 包含11个字符的字符串不能拆分,因为一个字符串总是比另一个大

那么我该怎么做呢?我曾想过使用平方根,但这对一个"10"个字符的字符串不起作用。适合9岁和25岁的人。

有什么想法吗?这种东西有技术名称吗?我想到了"最伟大的公约师",但我不太确定。

嗯。。。让我看看。。。我认为,如果我做对了,你想验证某个数字(字符串的长度)是否是素数:)

第一个想法是:1) 获取字符串的长度,做一个循环,将字符串的长度除以从2到(字符串的长度/2)的所有数字[你需要检查这个(字符串的宽度/2)是否也是一个整数,如果不是,则进行调整;)]2) 如果至少有一个数字将其除,砰。(您可以通过验证除法后是否有余数来检查此项)3) 如果没有,你就得到了一个素数。对不起,连除法都没有。

当然,对于很长的字符串来说,这种方法不会很快。。。只是一个想法。

它只是关于素数和复数,一个基本的数学概念。您需要的算法是Primality Test