算法练习--ABCD*E=DCBA

//1.ABCD * E = DBCA
//2.A,B,C,D {0-9} , E {1-9}
//3.A,B,C,D,E all different

var existSameN = function (arr){

for(var i = 0; i < arr.length; i++){
for(var j = 0; j < arr.length ; j++){
if(j == i){continue;}
if(arr[i] == arr[j]) {return true;}
}
}

return false;
}

var ret = new Array();

for(var i = 1000; i< 9999; i++){
var strI = i.toString();
var arr = new Array(strI[0],strI[1],strI[2],strI[3]);
if(existSameN(arr)){continue;}

var reverseI = parseInt(strI[3] + strI[2]+strI[1]+strI[0]);

for(var j = 1; j<= 9 ; j++){if(i * j == reverseI) {ret.push( {num:i,mul:j});}}
}

for(var i = 0;i < ret.length; i++)
console.log("number : " + ret[i].num + ", multiply  by : " + ret[i].mul);

算法练习--ABCD*E=DCBA,布布扣,bubuko.com

时间: 2024-10-28 23:37:32

算法练习--ABCD*E=DCBA的相关文章

这是递归和回溯的算法 是abcd&#39;的排列可能

#include<stdio.h>#include<iomanip>#include<iostream>using namespace std;bool b[10]={0};int a[10]={0};int print(){ for (int i=1;i<=4;i++) printf("%c ",a[i]); printf("\n");} int dosomething(int z){ int mm; for ( mm=1

华为C语言笔试题集合

①华为笔试题搜集 1.static有什么用途?(请至少说明两种)    1)在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变.    2) 在模块内(但在函数体外),一个被声明为静态的变量能够被模块内所用函数訪问,但不能被模块外其他函数訪问.它是一个本地的全局变量.    3) 在模块内,一个被声明为静态的函数仅仅可被这一模块内的其他函数调用.那就是,这个函数被限制在声明它的模块的本地范围内使用 2.引用与指针有什么差别?    1) 引用必须被初始化,指针不必.    2)

c#栈的习题2

—.单项选择题1.栈和队列具有相同的(    ). A.抽象数据类型     B.逻辑结构     C.存储结构     D.运算2.栈是(). A.顺序存储的线性结构     B.链式存储的非线性结构 C.限制存取点的线性结构     D.限制存储点的非线性结构3.()不是栈的基本操作. A.删除栈顶元素     B.删除栈底元素 C.判断栈是否为空     D.将栈置为空栈4.假定利用数组 a[n] 顺序存储一个栈,用top表示栈顶指针,top==-1表示桟空,并已知栈未满,当元素x进栈时所

最新115道华为、京东、滴滴、美团精选Java面试题整理

京东面试题 1. 一般sql注入怎么发现触点的,从源码阐述sqlmap如何测试注入点的. 2. masscan扫描端口时靠什么检测,为什么这么快? 请详述. 3. 你写过哪些小工具,你为你使用过的工具做过什么修改. 4. 如何提高采用python编写的扫描速度,谈谈对GIL锁的了解. 5.你觉得你发现的那个漏洞影响比较大. 6. 常见的web漏洞有哪些. 7. 有没有玩过硬件安全,研究程度如何. 8. 反爬虫,如果是你如何进行反爬虫,如何绕过反爬措施.使用无头浏览器被检测到了,如何绕过 9. n

AngularJS 学习笔记(1)

AngularJS是一款前端JS框架.AngularJS官网 http://angularjs.org [开发环境准备]: 1,下载AngularJS:JS and CSS in Solution 2,编辑器 WebStorm,下载地址:https://www.jetbrains.com/webstorm/  (配合最新版JetBrains使用,可以即时无刷新显示更新代码后的效果) 3,下载最新版Chrome,并安装扩展程序:JetBrains IDE Suport,(需要FQ) 下载地址:ht

(python)编程小练习

1.将一串字符串反向输出,如将"abcd"变成"dcba" str1="abcd" print str1[::-1] 2.判断是否为回文--判断用户输入的字符串是否为回文.回文是指正反拼写形式都是一样的词,譬如"racecar". while(1): input_str = raw_input("please input your string:") if input_str=="quit&quo

(基础篇) 正则表达式详解

一 什么是正则表达式: 简单的说,正则表达式是一种可以用于模式匹配和替换的强大工具.在几乎所有的基于UNIX/LINUX系统的软件工具中找到正则表达式的痕迹,例如:Perl或PHP脚本语言.此外,JavaScript这种客户端的脚本语言也提供了对正则表达式的支持,现在正则表达式已经成为了一个通用的概念和工具,被各类技术人员所广泛使用. 在某个Linux网站上面有这样的话:"如果你问一下Linux爱好者最喜欢什么,他可能会回答正则表达式:如果你问他最害怕什么,除了繁琐的安装配置外他肯定会说正则表达

字符串反转方法总结

描述:给我一个字符串,例如I love java,输出: java love I 方法一 [java] view plaincopyprint? public class StringReverse { public void swap(char[] arr, int begin, int end) { while(begin < end) { char temp = arr[begin]; arr[begin] = arr[end]; arr[end] = temp; begin++; end

next_permutation &amp; prev_permutation

#include <iostream> #include <string> #include <algorithm> using namespace std; //next_permutation()全排列的下一个 //prev_permutation()全排列的前一个,括号中都为数组的起始结束位置的指针 void print_int(int a[], int length) {//这个用来输出数组 for (int i = 0; i < length; i++)