法一:
代码如下:

#include <iostream>
using namespace std;
const int N = 15;
bool st[N];
int a[N];void dfs(int u) {if (u == 11) {if ((((a[1] * 1000 + a[2] * 100 + a[3] * 10 + a[4]) - (a[5] * 1000 + a[6] * 100 + a[7] * 10 + a[8])) * (a[9] *10 + a[10])) == 900) {for (int i = 1; i <= 10; i++) {cout << a[i] << " ";}cout << endl;return ;}}if (u == 1) {//第一个位置不能为0for (int i = 1; i <= 9; i++) {if (!st[i]) {st[i] = true;a[u] = i;dfs(u + 1);a[u] = -1;st[i] = false;}}} else if (u == 9) {//第9个位置不能为0for (int i = 1; i <= 9; i++) {if (!st[i]) {st[i] = true;a[u] = i;dfs(u + 1);a[u] = -1;st[i] = false;}}}elsefor (int i = 0; i <= 9; i++) {if (!st[i]) {st[i] = true;a[u] = i;dfs(u + 1);a[u] = -1;st[i] = false;}}
}int main() {memset(a, -1, sizeof(a));dfs(1);return 0;
}

法二:

#include <iostream>
#include <algorithm>
using namespace std;int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};void check() {if (((a[0] * 1000 + a[1] * 100 + a[2] * 10 + a[3]) - (a[4] * 1000 + a[5] * 100 + a[6] * 10 + a[7])) *(a[8] * 10 + a[9]) == 900&& a[0] != 0 && a[4] != 0 && a[8] != 0 ) {cout << a[0] * 1000 + a[1] * 100 + a[2] * 10 + a[3] << " " << a[4] * 1000 + a[5] * 100 + a[6] * 10 + a[7] << " " <<a[8] * 10 + a[9] << endl;}
}int main() {do {check();} while (next_permutation(a, a + 10));return 0;
}

[蓝桥杯2017初赛]算式900+dfs,next_permutation相关推荐

  1. [蓝桥杯2016初赛]剪邮票-dfs+next_permutation(好题)

    题目描述 如下图, 有12张连在一起的12生肖的邮票.现在你要从中剪下5张来,要求必须是连着的.(仅仅连接一个角不算相连) 比如,下面两张图中,粉红色所示部分就是合格的剪取. 请你计算,一共有多少种不 ...

  2. [蓝桥杯2017初赛]九宫幻方-数论+next_permutation枚举

    题目描述 小明最近在教邻居家的小朋友小学奥数,而最近正好讲述到了三阶幻方这个部分. 三阶幻方指的是将1~9不重复的填入一个33的矩阵当中,使得每一行.每一列和每一条对角线的和都是相同的. 三阶幻方又被 ...

  3. [蓝桥杯2017初赛]方格分割-dfs+思维

    解题思路: 这是大佬的思路: 这道题可能上来会想到搜格子,但搜格子意味着更高的复杂度以及判连通的需要,本题似乎搜索要切开的边更优.由题意,这一条切割线必定经过图的中心点,那么我们一旦确定了半条到达边界 ...

  4. 蓝桥杯2017初赛:迷宫 (dfs搜索)

    [蓝桥杯2017初赛]迷宫 Description X星球的一处迷宫游乐场建在某个小山坡上.它是由10x10相互连通的小房间组成的. 房间的地板上写着一个很大的字母.我们假设玩家是面朝上坡的方向站立, ...

  5. [蓝桥杯2017初赛]跳蚱蜢-map标记+bfs+环形数组

    解题思路: 这题如果我们考虑蚱蜢跳,有很多蚱蜢,有很多情况,所以我们让空盘跳,这样就简化题目了,然后我们化圆为直,将题目的情况看成字符串012345678,最后要变成087654321,这样题目就变得 ...

  6. [蓝桥杯2016初赛]方格填数-next_permutation

    代码如下: #include <iostream> #include <algorithm> using namespace std;int main() {int a[10] ...

  7. 蓝桥杯2017初赛-9数算式-dfs

    题目描述 观察如下的算式:9213 x 85674 = 789314562 左边的乘数和被乘数正好用到了1~9的所有数字,每个1次. 而乘积恰好也是用到了1~9的所有数字,并且每个1次. 请你借助计算 ...

  8. 蓝桥杯2017初赛-迷宫-dfs

    题目描述 X星球的一处迷宫游乐场建在某个小山坡上.它是由10x10相互连通的小房间组成的. 房间的地板上写着一个很大的字母.我们假设玩家是面朝上坡的方向站立,则: L表示走到左边的房间,R表示走到右边 ...

  9. [蓝桥杯2015初赛]手链样式-思维+next_permutation枚举(好题)

    题目描述 小明有3颗红珊瑚,4颗白珊瑚,5颗黄玛瑙. 他想用它们串成一圈作为手链,送给女朋友. 现在小明想知道:如果考虑手链可以随意转动或翻转,一共有多少不同的组合样式? 输出 请你输出该整数.不要输 ...

最新文章

  1. 无限极分类原理与实现
  2. Nightwish全集+6张EP+3张LV+N多图片[320K/MP3]
  3. 校招启动 | 2021 神策未来星全面启航,只差 1 个你!
  4. fiddler 抓取手机app请求包
  5. Azure认知服务之表单识别器
  6. LinkedHashMap 根据PUT顺序排序Map
  7. javascript option 菜单图标_MacBook上神奇的Option键
  8. 化身阿凡达,国外小哥开源 AI 实时变脸工具 Avatarify
  9. python编程(关于cocos2d)
  10. ajax控件扩展,22.6 扩展控件
  11. [Vue-cli3] is a Vue CLI 3 only command and you are using Vue CLI 2.9.6. You may...
  12. Linux下的LVM
  13. NZ源码交易平台虚拟交易系统(商家版) 高仿淘码网模板
  14. 《虚幻4 VR开发指南》视频教程
  15. matlab交流电路仿真,单相交流调压电路Matlab仿真
  16. 浮动时间怎么计算_轻松搞定PMP考试的计算题(四)时间参数计算
  17. 常用的图像处理标准图片汇总
  18. java resultset 不关闭_关于ResultSet的关闭问题
  19. Django实现adminx后台识别用户身份的内容编辑与显示
  20. 秒换算 天 时 分 秒

热门文章

  1. 你知道出现“乱码”的原因是什么吗?(4)
  2. 我是永远不可能出轨的,除非......
  3. 原来医生的处方不是随便乱写的...
  4. 裸奔、抽烟、凡尔赛,原来数学家玩得这么野……
  5. 傅立叶变换是如何改变我们生活的? ——四个角度告诉你答案
  6. 酸了!第一名+第三名的学霸情侣,分别直博清华、人大…
  7. 我怀疑全国最会吹牛的人,都在这8个公众号上了
  8. 为什么中国天才都往美国跑,可美国人的数学那么槽糕
  9. 渤海发现大油田,证券会提示风险,微博回应流量造假,刘国梁制定史上最严奖惩体系,这就是今天的大新闻。...
  10. 像小猪佩奇那样生活,需要多少钱?