Java实现 蓝桥杯 猜算式
2024-09-28 11:47:18
猜算式
看下面的算式:
□□ 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
…
请编程,输出所有可能的情况!
注意:
左边的两个乘数交换算同一方案,不要重复输出!
不同方案的输出顺序不重要
建议用:全排列解决问题
十一种
如果出来22种的话,可能是重复了,加一个a!=b
package 第二次模拟;
import java.util.ArrayList;
import java.util.Scanner;
public class Demo5算式 {
public static int count=0;
public static void main(String[] args) {
dfs(new ArrayList<Integer>());
System.out.println(count);
}
public static void dfs(ArrayList<Integer> list){
if(list.size()==9){
int a =list.get(0)*10+list.get(1);
int b =list.get(2)*10+list.get(3);
int c = list.get(4)*10+list.get(5);
int d = list.get(6)*100+list.get(7)*10+list.get(8);
if (a*b==c*d && a<b) {
count++;
}
return ;
}
for (int i = 1; i <=9; i++) {
if (!list.contains(i)) {
list.add(i);
dfs(list);
list.remove(list.size()-1);
}
}
}
}
最新文章
- BZOJ1085: [SCOI2005]骑士精神
- libtool: link: `dftables.lo&#39; is not a valid libtool object
- Remove Duplicates from Sorted List | &; ||
- 【J2EE】Hibernate
- 《JavaScript高级程序设计》心得笔记-----第五篇章
- NSString 练习
- Android设备定制为永不锁屏
- c.Tom and paper
- IOS Objective-C 协议,委托
- Nginx监控-Nginx+Telegraf+Influxb+Grafana
- Robotframework-Appium系列:登录操作
- 初识Redis系列之二:安装及简单使用
- nodejs源码编译-mipse64el架构
- JDK中的注解简单了解
- Spring Boot+Quartz实现一个实时管理的定时任务
- sessionStorage记录返回前端的数据,用于解决登录拦截器刷新页面的问题
- Nginx 配置为https服务器
- 控制uniFrame显示的一个管理类
- 微信小程序 - bindtap等事件传参
- WAKE-WIN10-SOFT-VS2013及工具
热门文章
- 关于日常操作中sql的性能
- linux --自已的域名无法登陆机器的解决办法:同步时间
- tomcat 8.5 及其 9.0 response写cookie 设置damain为 [.test.com] 出错 An invalid domain [.test.com] was specified for this cookie
- 我的linux学习日记day8
- java 四舍五入 保留n为数
- Shell脚本关于循环的一些总结
- Unity3D UGUI Image与父级保持比例缩放
- RabbitMQ应用示例
- vagrant与vrtualbox的使用
- PAT-1080 Graduate Admission (结构体排序)