DFS小题
原创
题目为:()()()+()()()=()()()
将1~9这9个数字填入括号,每个数字只能用一次。
枚举:
public class Test {
public static void main(String[] args){
int a[]=new int[9];
int flag[]=new int[10];
long total=0L;
for(int i=1;i<=9;i++) {
flag[i]=0;
}
for(a[0]=1;a[0]<=9;a[0]++) {
for(a[1]=1;a[1]<=9;a[1]++) {
for(a[2]=1;a[2]<=9;a[2]++) {
for(a[3]=1;a[3]<=9;a[3]++) {
for(a[4]=1;a[4]<=9;a[4]++) {
for(a[5]=1;a[5]<=9;a[5]++) {
for(a[6]=1;a[6]<=9;a[6]++) {
for(a[7]=1;a[7]<=9;a[7]++) {
for(a[8]=1;a[8]<=9;a[8]++) {
int tt=0;
for(int i=0;i<=8;i++) {
flag[a[i]]=1;
}
for(int i=1;i<=9;i++) {
tt+=flag[i];
}
if(tt==9) {
if(a[0]*100+a[1]*10+a[2]+a[3]*100+a[4]*10+a[5]==a[6]*100+a[7]*10+a[8]) {
total++;
tt=0;
}
}
for(int i=1;i<=9;i++) { //数组恢复
flag[i]=0;
}
}
}
}
}
}
}
}
}
}
System.out.println(total/2);
}
}
全排列:
关于全排列,请看我上一篇博客:https://www.cnblogs.com/chiweiming/p/9279858.html
public class Test{
static int flag[]=new int[10]; //flag[i]=0代表第i个数未用
static int win[]=new int[9];
static long total=0L;
public static void dfs(int step) { //第step个格子
if(step==9) {
if(win[0]*100+win[1]*10+win[2]+win[3]*100+win[4]*10+win[5]==win[6]*100+win[7]*10+win[8]) {
total++;
}
return;
}
for(int i=1;i<=9;i++) { //尝试按顺序将1~9其中一个放入格子
if(flag[i]==0) {
win[step]=i;
flag[i]=1;
dfs(step+1);
flag[i]=0;
}
}
}
public static void main(String args[]) {
for(int i=1;i<=9;i++) {
flag[i]=0;
}
dfs(0);
System.out.println(total/2);
}
}
答案:168
23:26:20
2018-07-09
DFS小题的更多相关文章
- 迷宫救人——DFS小题
原创 题目大意:人质被困在迷宫之中,要求你寻找一条最短路径快速找到人质. 如图,人质在黄色点2处,营救者在起点红色处,1表示无法通过的障碍点,寻找一条最短路径快速找到人质. 毫无疑问用DFS,遍历4个 ...
- poj1564 Sum It Up dfs水题
题目描述: Description Given a specified total t and a list of n integers, find all distinct sums using n ...
- 常让人误解的一道js小题
一道小题引发的深思 今天无意中看到一个js笔试题,不由得想起初学js那会被各种题目狂虐的心酸,虽说现在也会被笔试题所虐,但毕竟比之前好了很多,下面就是我的个人理解,欢迎拍砖.指正: var x = 1 ...
- 一些js小题(一)
一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...
- 关于理解python类的小题
今天看了python部落翻译的一篇<一道python类的小题>文章,感觉挺有启发性,记录下来: print('A') class Person(object): print('B') de ...
- POJ 1321 棋盘问题(DFS板子题,简单搜索练习)
棋盘问题 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 44012 Accepted: 21375 Descriptio ...
- 20181014xlVBA获取小题零分名单
Sub GetZeroName() Dim Dic As Object Const SUBJECT = "科目名称" Dim Key As String Dim OneKey Di ...
- 关于SQL的几道小题详解
关于SQL的几道小题详解 当我们拿到题目的时候,并不是急于作答,那样会得不偿失的,而是分析思路,采用什么方法,达到什么目的,还要思考有没有简单的方法或者通用的方法等等,这样才会达到以一当十的效果,这样 ...
- CF上的3道小题(2)
CF上的3道小题(2) T1:CF630K Indivisibility 题意:给出一个数n,求1到n的数中不能被2到9中任意一个数整除的数. 分析:容斥一下,没了. 代码: #include < ...
随机推荐
- 小程序WXML基本使用
数据绑定 <!--wxml--> <view> {{message}} </view> // page.js Page({ data: { message: 'He ...
- cassandra学习 四 数据模型
Keyspace(建空间): 可以理解为Database: Replication factor: 复制因数 : Replica placement srategy: 复制策略,默认是Simple ...
- .Net 框架实现AOP(动态代理实现AOP,本文为翻译)
在上一节,我们将静态实现AOP,但是对于一个大型项目,要想为每个类,每个方法都去实现AOP ,进行日志记录和权限验证似乎是不可能的. 即使可能对于成百上千个类维护,也是很难维护.所以今天的主题就是如标 ...
- catkin 工作空间 - Package 组成
package 是 ROS 软件的基本组织形式,ROS 就是由一个个的 package 组成的 package 是 catkin 的编译基本单元 一个 package 可以包含多个可执行文件(节点) ...
- Python多线程-生产者消费者模型
用多线程和队列来实现生产者消费者模型 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import threading imp ...
- DRF之REST规范介绍及View请求流程分析
编程是数据结构和算法的结合,而在Web类型的App中,我们对于数据的操作请求是通过url来承载的,本文详细介绍了REST规范和CBV请求流程. 编程是数据结构和算法的结合,小程序如简单的计算器,我们输 ...
- Python中的 set 与 深浅拷贝
字符串 join() 格式: "拼接的东西".join(可迭代对象) 可以加列表转换成字符串 lis = ['a','b','c','d'] s = "//" ...
- 02-20 winform 上传图片并读取图片
建立一个windows窗体应用程序,在form1界面中拖入两个按钮和一个pictureBox,通过输入输出流来上传图片和显示图片.需要添加一下openFileDialog1. 界面如下: 在cs中写上 ...
- js 判断浏览器类型大全
/**** * 目前识别范围 * Microsoft Internet Explorer IE浏览器 * --> TheWorld 世界之窗 * --> TT浏览器 * --> 36 ...
- [原创]Spring JdbcTemplate 使用总结与经验分享
引言 近期开发的几个项目,均是基于Spring boot框架的web后端项目,使用JdbcTemplate执行数据库操作,实际开发过程中,掌握了一些有效的开发经验,踩过一些坑,在此做个记录及总结,与各 ...