任务二:寻找吸血鬼数
打印所有4位吸血鬼数和它们的獠牙
 
提示:一共有7个;
吸血鬼数:
-该鬼的位数为偶数;
-该数的所有位中。是0的位少一半;
-该数每一位上的数字重新组合为两个位数相等的数,乘积正好等于该数。
例如:1260是吸血鬼数,他的獠牙是21和60.
-1260是4位数,4是偶数;
-1260中。是0的位数只有1个。少于一半’
-1260可以重新组合成21和60,这俩个数的位数想等都是2,21*60正好是1260。
 1 function findVampireNumbers() {
2 let sum = 0; // 记录找到的吸血鬼数的组数
3
4 for (let i = 10; i < 100; i++) { // 第一个两位数
5 for (let j = i + 1; j < 100; j++) { // 第二个两位数,大于第一个数
6 let i_val = i * j; // 计算两个两位数的乘积
7 if (i_val < 1000 || i_val > 9999) continue; // 排除乘积不是四位数的情况
8
9 let ar_str1 = Array.from(String(i_val)); // 将乘积转换为字符数组
10 let ar_str2 = Array.from(String(i) + String(j)); // 将两个两位数拼接后转换为字符数组
11 ar_str1.sort(); // 对乘积的字符数组进行排序
12 ar_str2.sort(); // 对拼接后的字符数组进行排序
13
14 if (JSON.stringify(ar_str1) === JSON.stringify(ar_str2)) {
15 // 如果排序后的字符数组相等,则找到一组吸血鬼数
16 sum++;
17 console.log(`第${sum}组: ${i}*${j}=${i_val}`);
18 console.log(`吸血鬼是${i_val},獠牙是${i}、${j}`);
19 }
20 }
21 }
22
23 console.log(`共找到${sum}组吸血鬼数`);
24 }

代码解释:

这段代码用于寻找吸血鬼数。
函数findVampireNumbers中:
初始化变量sum为0,用于记录找到的吸血鬼数的组数。
使用两个嵌套的for循环遍历所有可能的两位数。
在循环中,计算两个两位数的乘积并存储在变量i_val中。
如果乘积不是四位数(范围在1000到9999之外),则继续下一轮循环。
将乘积转换为字符数组ar_str1,将两个两位数拼接后转换为字符数组ar_str2。
对字符数组进行排序。
如果排序后的字符数组相等,则找到一组吸血鬼数。增加sum的值,并打印出组号、乘法表达式和吸血鬼数。
循环结束后,打印出总共找到的吸血鬼数的组数。
通过这段代码,我们可以寻找并打印出所有满足条件的吸血鬼数及其组合。
 

算法2:寻找吸血鬼数(JS)的更多相关文章

  1. 九度OJ 1214 寻找丑数【算法】

    题目地址:http://ac.jobdu.com/problem.php?pid=1214 题目描述: 把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因 ...

  2. [经典算法题]寻找数组中第K大的数的方法总结

    [经典算法题]寻找数组中第K大的数的方法总结 责任编辑:admin 日期:2012-11-26   字体:[大 中 小] 打印复制链接我要评论   今天看算法分析是,看到一个这样的问题,就是在一堆数据 ...

  3. Java求吸血鬼数算法(通用)

    /*吸血鬼数字是指位数为偶数的数字,可以由一 * 对数字相乘而得到,而这对数字各包含乘积的一半位数的数字, * 其中从最初的数字中选取的数字可以任意排序. * 以两个0结尾的数字是不允许的. * * ...

  4. 前端与算法 leetcode 1. 两数之和

    目录 # 前端与算法 leetcode 1. 两数之和 题目描述 概要 提示 解析 解法一:暴力法 解法二:HashMap法 算法 传入[1, 2], [11, 1, 2, 3, 2]的运行结果 执行 ...

  5. 基于visual Studio2013解决面试题之0701寻找丑数

     题目

  6. 算法训练 K好数

      算法训练 K好数   时间限制:1.0s   内存限制:256.0MB 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K进制数中K好数 ...

  7. 【微收藏】FourShadows.js – 时间感知的算法驱动的图标阴影JS库

    废话一箩筐,筐筐有心得 不小心养成了一个刷微博的习惯,主要还是关注一些前端人士,学习一些前端方面的知识,看到大家都有一些刷微博的小习惯.有的是转发一下,转发内容来一个标记(MARK).也有评论中标记为 ...

  8. 算法训练 K好数 解析

    算法训练 K好数 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数.求L位K ...

  9. 实现一个算法,寻找字符串中出现次数最少的、并且首次出现位置最前的字符 如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少)。并且比其他只出现一次的字符(如"d")首次出现的位置最靠前。

    实现一个算法,寻找字符串中出现次数最少的.并且首次出现位置最前的字符如"cbaacfdeaebb",符合要求的是"f",因为他只出现了一次(次数最少).并且比其 ...

  10. P1820 寻找AP数

    P1820 寻找AP数两个性质,分解质因数后,连续,且指数递减,dfs就完了 #include <iostream> #include <cstdio> #include &l ...

随机推荐

  1. Android Studio中SQLite的使用,主要介绍sqlite插入和读出图片(ViewBinder)的操作方法

    sqlite简介 本人最近在写一个小的安卓项目,开发app过程中用到了安卓自带的sqlite.本文主要对sqlite图片操作进行介绍,其他存入文本之类的操作和普通数据库一样,众所周知,sqlite是一 ...

  2. 2023-06-24:给你一根长度为 n 的绳子, 请把绳子剪成整数长度的 m 段, m、n都是整数,n > 1并且m > 1, 每段绳子的长度记为 k[0],k[1]...k[m - 1]。 请问

    2023-06-24:给你一根长度为 n 的绳子, 请把绳子剪成整数长度的 m 段, m.n都是整数,n > 1并且m > 1, 每段绳子的长度记为 k[0],k[1]...k[m - 1 ...

  3. 介绍Vue router的history模式以及如何配置history模式

    引言 Vue router给我们提供了两种路由模式,分别是hash模式和history模式.其中默认是使用hash模式,即URL中带有一个#符号,但是处于业务或个人喜爱的差别,Vue router也提 ...

  4. Set_HashSet_TreeSet_小记

    Set接口:Set集合继承自Collection集合 Set:底层数据结构是一个哈希表,能保证元素是唯一的,元素不重复!它通过它的子实现了HashSet集合去实例化,HashSet集合底层是HashM ...

  5. docker部署zabbix6.0及企业微信发送告警

    1 前言 1.1 实验背景 因zabbix 6.0新增许多新特性,为熟悉界面特意在本地部署一套简易版(未启用HA功能).原本想要在烧制了centos7.9系统树莓派上部署,一查之下armv7果然冷门, ...

  6. 阿里如何实现秒级百万TPS?搜索离线大数据平台架构解读

    ★ 淘宝搜索阶段 在2008-2012这个阶段,我们重点支持淘宝搜索的业务发展,随着淘宝商品量的不断增加,逐步引入Hadoop.Hbase等开源大数据计算和存储框架,实现了搜索离线系统的分布式化,有力 ...

  7. zabbix 添加 zabbix_agentd 服务

    创建服务文件 # /usr/lib/systemd/system/zabbix-agent.service [Unit] Description=Zabbix Agent After=syslog.t ...

  8. Linux 函数: my_func

    # A man and his 'fuctions' ;) # quick use ipmitool cmd to do something ipmi-ip-cmd () { local ip=$1 ...

  9. 【Go blog】Govulncheck v1.0.0 发布了!

    我们很高兴地宣布,govulncheck v1.0.0 已经发布,同时也发布了用于集成扫描到其他工具的 API 的 v1.0.0 版本!Go 对漏洞管理的支持首次在去年九月宣布.从那时起,我们做了一些 ...

  10. spring-mvc系列:简介和基本使用

    目录 一.简介 1.什么是MVC 2.什么是SpringMVC 3.SpringMVC的特点 二.基本使用 1.开发环境 2.创建maven工程 3.配置web.xml 4.创建SpringMVC的配 ...