九数组分数|2015年蓝桥杯B组题解析第五题-fishers
2024-09-09 01:57:41
九数组分数
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
最新文章
- MySQL存储过程及触发器
- Http状态码笔记
- 浏览器版本不支持页面示例 supper.html
- Python:线程
- 转载:分布式系统的CAP理论
- Redis3.0.7 cluster/集群 安装配置教程
- XML CDATA节点
- ES5 数组方法reduce
- GridView 下拉搜索
- 关于ASP.NET的web.config的小笔记
- 全选Form >; Grid 的所有行
- BZOJ3850: ZCC Loves Codefires
- Java集合框架:Set、List、Map等介绍
- springboot 1.5.2 thymeleaf 添加templates 静态资源访问路径
- dqname.go
- 原生Ajax XMLHttpRequest对象
- input表单验证
- visual stutio 20017
- Office365维护命令
- Shell按行读取文件的3种方法
热门文章
- Linux文件目录介绍及文件颜色区别
- chown 命令
- UIWebview于JS交互
- [kx]人眼结构&;凹/凸透镜成像及生活应用
- 机器学习理论基础学习14.1---线性动态系统-卡曼滤波 Kalman filter
- [lr] 直方图
- set的一些数学运算
- kendo datetimepicker
- IntelliJ IDEA 编译Java程序出现 &#39;Error:java: 无效的源发行版: 9&#39; 解决方法
- python 简单的爬虫