九数组分数

1,2,3...9 这九个数字组成一个分数,其值恰好为1/3,如何组法?

下面的程序实现了该功能,请填写划线部分缺失的代码。

#include <stdio.h>

void test(int x[])
{
int a = x[0]*1000 + x[1]*100 + x[2]*10 + x[3];
int b = x[4]*10000 + x[5]*1000 + x[6]*100 + x[7]*10 + x[8]; if(a*3==b) printf("%d / %d\n", a, b);
} void f(int x[], int k)
{
int i,t;
if(k>=9){
test(x);
return;
} for(i=k; i<9; i++){
{t=x[k]; x[k]=x[i]; x[i]=t;}
f(x,k+1);
_____________________________________________ // 填空处
}
} int main()
{
int x[] = {1,2,3,4,5,6,7,8,9};
f(x,0);
return 0;
}

答案:{ t=x[k]; x[k]=x[i]; x[i]=t;}

思路:考察递归回溯(交换回溯法),每次把k~9这些数放到当前的第一位(第k位),dfs搜索下一个位置,搜索后回复原位(交换回来)

代码填空题

运行结果比对:

5832/17496

5823/17469

最新文章

  1. MySQL存储过程及触发器
  2. Http状态码笔记
  3. 浏览器版本不支持页面示例 supper.html
  4. Python:线程
  5. 转载:分布式系统的CAP理论
  6. Redis3.0.7 cluster/集群 安装配置教程
  7. XML CDATA节点
  8. ES5 数组方法reduce
  9. GridView 下拉搜索
  10. 关于ASP.NET的web.config的小笔记
  11. 全选Form &gt; Grid 的所有行
  12. BZOJ3850: ZCC Loves Codefires
  13. Java集合框架:Set、List、Map等介绍
  14. springboot 1.5.2 thymeleaf 添加templates 静态资源访问路径
  15. dqname.go
  16. 原生Ajax XMLHttpRequest对象
  17. input表单验证
  18. visual stutio 20017
  19. Office365维护命令
  20. Shell按行读取文件的3种方法

热门文章

  1. Linux文件目录介绍及文件颜色区别
  2. chown 命令
  3. UIWebview于JS交互
  4. [kx]人眼结构&amp;凹/凸透镜成像及生活应用
  5. 机器学习理论基础学习14.1---线性动态系统-卡曼滤波 Kalman filter
  6. [lr] 直方图
  7. set的一些数学运算
  8. kendo datetimepicker
  9. IntelliJ IDEA 编译Java程序出现 &#39;Error:java: 无效的源发行版: 9&#39; 解决方法
  10. python 简单的爬虫