看下面的算式:

□□ x □□ = □□ x □□□

它表示:两个两位数相乘等于一个两位数乘以一个三位数。

如果没有限定条件,这样的例子很多。

但目前的限定是:这9个方块,表示1~9的9个数字,不包含0。

该算式中1至9的每个数字出现且只出现一次!

比如:

46 x 79 = 23 x 158

54 x 69 = 27 x 138

54 x 93 = 27 x 186

.....

请编程,输出所有可能的情况!

注意:

左边的两个乘数交换算同一方案,不要重复输出!

不同方案的输出顺序不重要

import java.util.ArrayList;

import java.util.Arrays;

import java.util.HashSet;

import java.util.List;

public class Main {

static boolean visited[] = new boolean[10];

static List k = new ArrayList();

static int[] vs = new int[10];

static HashSet rs = new HashSet();

public static void main(String[] args) {

long t1 =

System.currentTimeMillis();

dfs(1, 10);

for (String s : rs) {

System.out.println(s);

}

System.out.println(System.currentTimeMillis()

- t1);

}

private static void dfs(int begin, int end)

{

if (begin == end) {

check();

} else {

for (int i =

1; i <= 9; i++) {

if

(!visited[i]) {

visited[i]

= true;

vs[begin]

= i;

dfs(begin

+ 1, end);

visited[i]

= false;

}

}

}

}

private static void check() {

int a = vs[1] * 10 +

vs[2];

int b = vs[3] * 10 +

vs[4];

int c = vs[5] * 10 +

vs[6];

int d = vs[7] * 100 + vs[8] *

10 + vs[9];

if (a * b == c * d) {

if (a > b)

{

int

t = a;

a

= b;

b

= t;

}

rs.add(a +

"*" + b + "=" + c + "*" + d + "=" + a * b+","+c*d);

}

}

}

结果:

63*74=18*259=4662,4662

73*96=12*584=7008,7008

58*96=32*174=5568,5568

58*67=29*134=3886,3886

76*98=14*532=7448,7448

54*69=27*138=3726,3726

58*69=23*174=4002,4002

46*79=23*158=3634,3634

58*73=29*146=4234,4234

64*79=32*158=5056,5056

54*93=27*186=5022,5022

c语言 题目 猜算式,蓝桥杯竞赛题目(猜算式)相关推荐

  1. 马虎的算式 - 蓝桥杯

    标题:马虎的算式 - 蓝桥杯 作者:MilkCu(http://blog.csdn.net/milkcu) 内容:这是2013年第四届蓝桥杯全国软件大赛预赛C组的第2题. 题目描述 标题: 马虎的算式 ...

  2. 蓝桥杯竞赛指南及经验分享

    CSDN话题挑战赛第1期 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f 参赛话题:大学生竞赛指南 话题描述: ...

  3. 蓝桥杯嵌入式——题目总结及文章汇总

    蓝桥杯嵌入式--题目总结及文章汇总 一.前言 笔者也是最近准备参加第十二届蓝桥杯嵌入式的选手,希望能够和大家一起学习.我也将我自己学习过程中,学习stm32遇到的一些问题,以及刷题的代码等都进行了整理 ...

  4. 蓝桥杯python组——猜生日

    蓝桥杯python组--猜生日 import os import sys import datetime start=datetime.date(1912,3,12) end=datetime.dat ...

  5. 蓝桥杯 初赛题目 高斯日记

    蓝桥杯 初赛题目 高斯日记 题目描述: 大数学家高斯有个好习惯:无论如何都要记日记. 他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如:4210 后来人们知道,那个整数就是日期, ...

  6. 【预览】蓝桥杯竞赛python算法笔记 代码模板|吐血总结|蓝桥杯省赛国赛

    [预览]蓝桥杯竞赛python算法笔记 代码模板|吐血总结 完整版链接 文章目录 [预览]蓝桥杯竞赛python算法笔记 代码模板|吐血总结 1 二分算法求分界值 2 双指针算法 2.1 求最长的不包 ...

  7. 【完整版】蓝桥杯竞赛python算法笔记 代码模板|吐血总结|蓝桥杯省赛国赛

    蓝桥杯竞赛python算法笔记 代码模板|吐血总结 文章目录 蓝桥杯竞赛python算法笔记 代码模板|吐血总结 1 二分 1.1 二分求最大满足(check红色条件) 1.2 二分求最小满足(che ...

  8. 第九届蓝桥杯稍小分数c语言,【第九届蓝桥杯大赛征文】蓝桥梦

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 第一次参加蓝桥杯是大一. 不知道是幸运还是不幸,我几乎是在进大学不久后就接触了程序设计竞赛.老师建议我去报名蓝桥杯的时候也就是C语言刚开课两个月,老师说的 ...

  9. 蓝桥杯的c语言编译器,第九届蓝桥杯大赛个人赛省赛(软件类)C/C++ 大学B组比赛心得(还在更新)...

    第九届蓝桥杯大赛个人赛省赛(软件类)C/C++ 大学B组 考生须知: 考试开始后,选手首先下载题目,并使用考场现场公布的解压密码解压试题. 考试时间为4小时.时间截止后,提交答案无效. 在考试强制结束 ...

最新文章

  1. mysql killed 不掉,解决:kernel: Out of memory: Killed process 15967, UID 27, (mysqld).
  2. Win10开发UWP使用.Net Native编译时遇到的一些问题。
  3. CSTrackV2解读
  4. 电脑动态壁纸_每日壁纸—水彩插画少女动漫手机高清无水印壁纸第二波
  5. IDEA启动tomcat报错java.util.zip.ZipException: error in opening zip file
  6. java序列化写法_java-spark的各种常用算子的写法
  7. python二分法查找程序_Python程序查找地板划分
  8. 为什么调用thread.Abort(),线程不会马上停止
  9. Oracle数据库备份与还原命令 -- exp/imp
  10. mp.weixin.php,GitHub - temberature/mp-php-sdk: 微信公众平台第三方授权php开发包, weixin mp developer SDK....
  11. 搞懂静态代码分析,看这文就够了!
  12. Centos6.6系统root用户密码恢复案例(转)
  13. 先有鸡还是先有蛋? 加拿大科学家揭开谜底
  14. 汇编 学到哪里写哪里——栈
  15. qt Graphic View 学习
  16. Node.js .sh scripts Manager
  17. 一起学OCP:oracle-082题库及解析(1-20)
  18. stm8s单片机2位数码管显示_AT89S52单片机,实现功能两位数码管显示数字,按下
  19. 发送邮件到腾讯企业邮箱
  20. (RAID原理)JBOD

热门文章

  1. java的静态变量怎么赋值_java static变量可以赋值吗?
  2. inodemac_校园网客户端Mac版-Inode7.0 for mac下载 V7.0-PC6苹果网
  3. 中文文本纠错 算例实现(有算例完整代码)
  4. JavaSE 基础面试题
  5. OpenCASCADE: Code::Blocks构建OCCT
  6. boost::signals2::slot相关的测试程序
  7. GDCM:gdcm::VM的测试程序
  8. GDCM:gdcm::VL 的测试程序
  9. Boost:bzip2解压缩器
  10. Boost:与文件系统相关的BOOST_TEST_EQ测试