神奇的字符串:JavaScript 中的问题

王林
Lepaskan: 2023-09-08 12:17:05
ke hadapan
924 人浏览过

神奇的字符串:JavaScript 中的问题

问题

神奇的字符串 str 仅由 '1' 和 '2' 组成,并遵循以下规则 -

字符串 str 是神奇的,因为它连接了数字字符“1”和“2”连续出现生成字符串 str 本身。

字符串 str 的前几个元素如下 -

str = "1221121221221121122……"
Salin selepas log masuk

如果我们将 str 中连续的 '1' 和 '2' 分组,它将是 -

1 22 11 2 1 22 1 22 11 2 11 22 ......
Salin selepas log masuk

每组中“1”或“2”的出现次数为 -

1 2 2 1 1 2 1 2 2 1 2 2 ......
Salin selepas log masuk

我们可以看到上面的出现序列就是字符串本身。

我们给定一个整数num作为输入,我们需要返回字符串中第一个num中'1的个数。神奇的字符串str。

例如,如果函数的输入是 -

const num = 6;
Salin selepas log masuk

那么输出应该是 -

const output = 3;
Salin selepas log masuk

输出说明:

神奇字符串S的前6个元素是“12211”,其中包含三个1,因此返回3。

示例

其代码为 -

 现场演示

const num = 6;
const magicalString = (num = 1) => {
   let ind = 12;
   let str = '1221121221221121122';
   while(str.length < num){
      const end = str.substring(str.length - 1) === '2' ? '1' : '2';
      str = parseInt(str.substring(ind, ind + 1)) === 2 ? str + end + end : str + end;
      ind++;
   };
   return (str.substring(0, num).match(/1/g)||[]).length;
};
console.log(magicalString(num));
Salin selepas log masuk

输出

控制台中的输出将是 -

3
Salin selepas log masuk

以上是神奇的字符串:JavaScript 中的问题的详细内容。更多信息请关注PHP中文网其他相关文章!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!