原创


题目为:()()()+()()()=()()()

将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小题的更多相关文章

  1. 迷宫救人——DFS小题

    原创 题目大意:人质被困在迷宫之中,要求你寻找一条最短路径快速找到人质. 如图,人质在黄色点2处,营救者在起点红色处,1表示无法通过的障碍点,寻找一条最短路径快速找到人质. 毫无疑问用DFS,遍历4个 ...

  2. poj1564 Sum It Up dfs水题

    题目描述: Description Given a specified total t and a list of n integers, find all distinct sums using n ...

  3. 常让人误解的一道js小题

    一道小题引发的深思 今天无意中看到一个js笔试题,不由得想起初学js那会被各种题目狂虐的心酸,虽说现在也会被笔试题所虐,但毕竟比之前好了很多,下面就是我的个人理解,欢迎拍砖.指正: var x = 1 ...

  4. 一些js小题(一)

    一些js小题,掌握这些对于一些常见的面试.笔试题应该很有帮助: var a=10; function aa(){ alert(a); } function bb(){ aa(); } bb();//1 ...

  5. 关于理解python类的小题

    今天看了python部落翻译的一篇<一道python类的小题>文章,感觉挺有启发性,记录下来: print('A') class Person(object): print('B') de ...

  6. POJ 1321 棋盘问题(DFS板子题,简单搜索练习)

    棋盘问题 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 44012   Accepted: 21375 Descriptio ...

  7. 20181014xlVBA获取小题零分名单

    Sub GetZeroName() Dim Dic As Object Const SUBJECT = "科目名称" Dim Key As String Dim OneKey Di ...

  8. 关于SQL的几道小题详解

    关于SQL的几道小题详解 当我们拿到题目的时候,并不是急于作答,那样会得不偿失的,而是分析思路,采用什么方法,达到什么目的,还要思考有没有简单的方法或者通用的方法等等,这样才会达到以一当十的效果,这样 ...

  9. CF上的3道小题(2)

    CF上的3道小题(2) T1:CF630K Indivisibility 题意:给出一个数n,求1到n的数中不能被2到9中任意一个数整除的数. 分析:容斥一下,没了. 代码: #include < ...

随机推荐

  1. Linux安装微信

    地址:http://www.toutiao.com/i6362126617556288001/#6649976-tsina-1-90079-4471e2b057b5019ad452c722f04bba ...

  2. PL/SQL 训练05--游标

    --隐式游标--通过一个简单的SELECT ...INTO 语句提取一行数据,并放在一个局部变量中,最简单获取数据的途径 --显示游标--可以在声明单元明确的声明一个查询,这样可以在一个或多个程序中打 ...

  3. ARM-Linux内核移植之(二)——Linux2.6.22内核移植

    平台:mini2440  交叉工具链:arm-linux-gcc-4.3.2 一.内核移植基本知识 移植内核也叫构建BSP(boardsupprot packet).BSP的作用有两个:一是为内核运行 ...

  4. zabbix短信监控

    [ ] zabbix-短信报警(参考http://hanyun.blog.51cto.com/1060170/1604918 ) [ ] zabbix-电话报警(参考http://dl528888.b ...

  5. FusionCharts simple demo for (html+js、APS.NET Webform、MVC)

    做GIS或其他内部数据统计项目的应该对FusionCharts也不会太陌生,简单易用已无需多说什么了,只是有时候框架不同,实现起来也稍有差异 引用dll调用FusionCharts类的静态方法Rend ...

  6. String to Integer (atoi) ???

    #define INT_MAX 2147483647 #define INT_MIN -2147483648 class Solution { public: int atoi(const char ...

  7. java - 读取,导出 excel文件数据

    首先需下载poi java包,添加至构建路径, 写处理方法: import java.io.FileInputStream;import java.io.FileOutputStream;import ...

  8. flask ---映射到数据库

    在当前项目文件下:运行cmd指令(terminal中)  (1)python manage.py db init ----初始化文件  (2)python manage.py db migrate-- ...

  9. OSCache-JSP页面缓存(1)

    一.OSCache提供的缓存标签 这是OSCache提供的标签库中最重要的一个标签,包括在标签中的内容将应用缓存机制进行处理,处理的方式将取决于编程者对cache标签属性的设置. 第一次请求到达时,标 ...

  10. objc变量的获取

    [objc变量的获取] C++成员变量通过偏移来寻找,速度极快.But Objc中的变量通过方法调用来寻找,方法首先根据变量名,找到ivar_t,然后在ivar_t对象中取出偏移,再用此偏移来取值(这 ...