1~9个数字组成的前i个数能被i组成
2015-07-28 19:54
309 查看
1~9的9个数字,每个数字只能出现一次,要求这样一个一个9位的整数:其第一位能被1整除,前两位能被2整除,前3位能被3整除.......依此类推,前9位能被9整除。
#include<stdio.h>
#include<vector>
using namespace std;
bool used[10];
vector <long long>v;
void dfs(int k, long long a)
{
if (k && a%k != 0)
return;
if (k == 9)
{
v.push_back(a);
return;
}
for (int i = 1; i <= 9; i++)
{
if (!used[i])
{
used[i] = 1;
dfs(k + 1, a * 10 + i);
used[i] = 0;
}
}
}
int main()
{
dfs(0, 0);
for (int i = 0; i < v.size(); i++)
printf("%lld", v[i]);
getchar();
}
相关文章推荐
- MySQL导入.sql文件及常用命令
- [转] Oracle analyze 命令分析
- 暴力求解——最大乘积 Maximum Product,UVa 11059
- 【整理】WDK 和 DDK异同
- iOS开发实现页面间的数据传递
- zookeeper配置
- Bundle saveInstanceState的作用与重写onSaveInstanceState方法
- Leetcode# 67 Add Binary
- 输出菱形的*塔及字母塔问题
- How to convert Windows 7 on MBR/BIOS to GPT/UEFI
- Linux查看网络状态
- 面对对象的三大特征
- Inspect_gasket_local_deformable.hdev (网上也有相关的)相关例程学习
- 比较ArrayList、LinkedList、Vector
- kafka环境搭建
- Linux 高级编程之小结(一)
- 禁用form表单中所有控件
- 7月27日-----正则表达式、线程
- Android 开发者必备的八款小工具
- poj 次短路 dijkstra