题意就是找到一个全排列按照题目说的计算方式得到结果为sum,可以直接用dfs找全排列并判断是否和为sum,也可以用next_permutation()生成全排列,生成的全排列本身就是按照字典序的,但是离谱的是深搜能过而直接用next_permutation在测试点10 1535会超时,原来是不存在某一个排列使得和是sum,所以应该啥也不输出,被题干中“数据保证有解误导”。一开始是判断生成的排列和是sum终止循环,循环体内生成排列,这样无解会死循环,鉴于next_permutation得到最后一个全排列时会返回false,因此将它作为循环判断条件修改即可。

#include <iostream>
#include <bits/stdc++.h>
using namespace std;int cal(vector<int> tmp,int n){while(n!=1){for(int i=0;i<n-1;i++){tmp[i]=tmp[i]+tmp[i+1];}n--;}return tmp[0];
}
int main(){int n,sum;cin >> n >> sum;vector<int> tmp(n);for(int i=0;i<n;i++) {tmp[i] = i + 1;}bool flag=false;do{if(cal(tmp,n)==sum){flag=true;break;}}while(next_permutation(tmp.begin(),tmp.end()));if(flag){for(int i=0;i<n;i++){cout << tmp[i] << " ";}}return 0;
}

蓝桥杯 算法练习 数字游戏相关推荐

  1. 蓝桥杯算法训练 数字游戏 组合数和暴力两种解法

    试题 算法训练 数字游戏 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个1-N的排列a[i],每次将相邻两个数相加,得到新序列,再对新序列重复这样的操作,显然每次得到的序列 ...

  2. Java实现 蓝桥杯 算法训练 数字游戏

    试题 算法训练 数字游戏 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个1-N的排列a[i],每次将相邻两个数相加,得到新序列,再对新序列重复这样的操作,显然每次得到的序列 ...

  3. 蓝桥杯 算法训练 数字游戏

    算法训练 数字游戏 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个1-N的排列a[i],每次将相邻两个数相加,得到新序列,再对新序列重复这样的操作,显然每次得到的序列都比上 ...

  4. 蓝桥杯——算法训练——数字三角形

    蓝桥杯--算法训练--数字三角形 这道题不难,但是比较典型,可以作为动态规划(dp)的入门篇,属于线性dp(LIS,LCS和数字三角形都是此类题型). ------------------------ ...

  5. 蓝桥杯 Python 练习题 数字游戏

    试题 算法训练 数字游戏 提交此题   评测记录 资源限制 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个1-N的排列a[i],每次将相邻两个数相加,得到新序列,再对新序列重复这 ...

  6. 蓝桥杯 算法提高 转圈游戏 JAVA

    蓝桥杯 转圈游戏 原题描述 解题思路 JAVA代码 运行结果 原题描述 问题描述 n 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏.按照顺时针方向给 n 个位置编号,从0 到 n-1.最初,第 0 ...

  7. java 蓝桥杯算法训练 数字三角形(题解)

    试题 算法训练 数字三角形 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 (图3.1-1)示出了一个数字三角形. 请编一个程序计算从顶至底的某处的一条路 径,使该路径所经过的数字的 ...

  8. 蓝桥杯历届试题-数字游戏

    题目描述 栋栋正在和同学们玩一个数字游戏. 游戏的规则是这样的:栋栋和同学们一共n个人围坐在一圈.栋栋首先说出数字1.接下来,坐在栋栋左手边的同学要说下一个数字2.再下面的一个同学要从上一个同学说的数 ...

  9. Java实现 蓝桥杯 历届试题 数字游戏

    问题描述 栋栋正在和同学们玩一个数字游戏. 游戏的规则是这样的:栋栋和同学们一共n个人围坐在一圈.栋栋首先说出数字1.接下来,坐在栋栋左手边的同学要说下一个数字2.再下面的一个同学要从上一个同学说的数 ...

最新文章

  1. centos jdbc配置mysql_CentOS安装glassfish4.0配置jdbc连接mysql
  2. processing pushMartix
  3. 五、QPushButton按钮和QLineEdit控件操作
  4. matlab问题利用M文件比较两个数大小,Matlab中写M文件及调用
  5. eclipse中为了format的代码更加好看,少换行,可以设置java、xml、jsp的代码line width。
  6. Spark SQL整合Hive
  7. 应对“反洗钱”,银丰新融反洗钱自主监测系统为机构保驾护航
  8. 芯片业巨震!英特尔拟90亿美元卖掉NAND闪存业务
  9. POJ1703-Find them, Catch them
  10. Verilog基础知识0(`define、parameter、localparam三者的区别及举例)
  11. 全球第一博客---缠中说禅
  12. 集线器(hub),交换机以及路由器异同;冲突域和广播域详解
  13. (一)Activiti 数据库25张表——流程历史记录表20(ACT_HI_DETAIL)
  14. Telegram支付接口接入
  15. 实现发送xml格式的请求
  16. UOS 开启开发者选项并激活系统
  17. 利用selenium携带cookies实现免登录
  18. 嵌入式STM32—第一天GPIO实现led呼吸灯
  19. 卷积神经网络的三个特性
  20. 爬虫技术——一篇全搞定!

热门文章

  1. bnc转vga转换器
  2. C#开发OPC客户端
  3. Apache安装配置(Linux)-有手就行
  4. 阿里云推出“通达云OA”办公系统 基于钉钉的移动OA应用...
  5. k8s集群重新将master节点加入集群
  6. IE8.0中显示不出来图片其他浏览器都可以显示
  7. tomcat springmvc 图片404不显示
  8. 语音科学计算机,CalcVoice(语音科学计算器)
  9. 华为g9青春版连接计算机,华为G9青春版 移动4G(VNS-TL00)一键救砖教程,轻松刷回官方系统...
  10. 跨时钟域信号处理(二)——异步fifo的Verilog实现(附同步fifo的实现)