TOJ---2621--全排列

这个方法 是超神教我的 --- 全排列的方法太多种了 感觉他这种写的 字典序法 是最简单的 最容易让人接受的

而且在时间复杂度和空间复杂度上 都可以让人接受

我待会将具体每步做法简要写一下...-> 我现在被一个 三角形给 深深烦死了  。。。。。。贴个代码 来 缓解下.....

 1 #include <iostream>
 2 #include <algorithm>
 3 using namespace std;
 4 
 5 int arr[30];
 6 const int inf = 0x3f3f3f3f;
 7 
 8 int main()
 9 {
10     int n , temp;
11     int t;
12     int i , j , k;
13     while( ~scanf("%d",&t) )
14     {
15         while( t-- )
16         {
17             scanf( "%d",&n );
18             for( i = 0 ; i<n ; i++ )
19             {
20                 scanf( "%d",&arr[i] );
21             }
22             sort( arr , arr+n );
23             while(1)
24             {
25                 int mmin = inf;
26                 for( i = 0 ; i<n ; i++ )
27                 {
28                     printf( "%d%c",arr[i],(i==n-1)?'\n':' ' );
29                 }
30                 for( i = n-1 ; i>=1 ; i-- )
31                 {
32                     if( arr[i]>arr[i-1] )
33                     {
34                         temp = arr[i-1];
35                         k = i-1;
36                         break;
37                     }
38                 }
39                 if( i<=0 )
40                     break;
41                 for( i = n-1 ; i>k ; i-- )
42                 {
43                     if( arr[i]>arr[k] && arr[i]<mmin )
44                     {
45                         mmin = arr[i];
46                         j = i;
47                     }
48                 }
49                 swap( arr[j] , arr[k] );
50                 for( i = k+1 , j = n-1 ; i<j ; i++ , j-- )
51                 {
52                     swap( arr[i] , arr[j] );
53                 }
54             }
55             printf( "\n" );
56         }
57     }
58     return 0;
59 }
View Code

 

today:

  世间最美 不过 残缺美

  所以 留点遗憾 是件很美的事

转载于:https://www.cnblogs.com/radical/p/3790117.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/399332.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

月份第一天_4月份的第一天,全省迎来晴暖天气~

2019年4月1日早上好北方新农村准时准点播报~▼▼▼今天是2019年4月1日星期一辽宁的天气小孩的脸说变就变上周末突如其来的一场雪&#xff0c;让辽宁大部分地区“措手不及”已经开始回升的温度瞬间跌落到谷底。但不管怎样&#xff0c;随着节气的更迭&#xff0c;冷空气终究大势已…

Windows系统下搭建Git本地代码库

近由于工作需要&#xff0c;要把工作代码做一下版本管理。工作代码也不方便放到github上&#xff0c;也不想付费建私密库&#xff0c;公司也没几个人&#xff0c;所以就想着搭建一个本地Git版本库&#xff0c;来做版本管理。搭建过程如下。 系统环境&#xff1a;Dell OptiPlex…

mac 下终端 操作svn命令 以及出现证书错误的处理方法

首先&#xff0c;转载地址&#xff1a;http://hi.baidu.com/zhu410289616/item/eaaf160f60eb0dc62f4c6b0e 还有一个地址&#xff1a;http://www.cnblogs.com/heiniuhaha/archive/2011/11/11/2245594.html 解决证书出错&#xff0c;错误见下图&#xff1a; 解决方法&#xff1a;…

文件过滤_jmeter(七)-BeanShell对数据过滤保存文件

在测试中有时需要对参数化数据进行过滤&#xff0c;实现保存到一个文件。如&#xff1a;某项目&#xff0c;从数据库查询到10万条用户数据&#xff0c;因为有的用户没有权限或者过期了&#xff0c;需要对这份数据筛选出来能正常使用的用户。如下使用beanshell实现此功能。原文件…

如何在mac系统下搭建git服务器

https://zhidao.baidu.com/question/1823748339128066228.html 第一步,下载gitblit http://gitblit.com/ 这里当然是选择linux/osx的版本。下载下来是一个.tar.gz的压缩文件&#xff0c;我下载时最新版本是gitblit-1.7.1.tar.gz 第二步&#xff0c;配置gitblit 创建目录&…

【Lucene4.8教程之五】Luke

一、Luke基本内容 1、Luke简介 Luke可用于查看Lucene创建的索引&#xff0c;并对其进行基本操作。 2、创建Luke &#xff08;1&#xff09;从Github上下载源文件 https://github.com/tarzanek/luke &#xff08;2&#xff09;解压文件后&#xff0c;打开DOS窗口&#xff0c;进入…

计算mView在view周围的位置

为什么80%的码农都做不了架构师&#xff1f;>>> /*** 计算mView在view周围的位置** param view** param mMargin mView与view或边界的间距* * titleBarHeight 标题栏的高度* mContext当前的Activity*/private void aroundView(View view, float mMargin) …

c++模板类静态成员变量_一文讲透父子类中静态变量,成员变量初始化顺序原理...

推荐&#xff1a;从面试到入职到离职&#xff0c;我在B站工作的30天时光 爱了爱了&#xff0c;Alibaba顶级MySQL调优手册到手&#xff0c;加薪妥了 爱了爱了&#xff0c;Spring Cloud Alibaba内部微服务架构笔记真的太牛了 本文主要是想分析一下静态变量和成员变量的初始化顺序…

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(八)

大熊猫猪侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 回到Xcode中,新建一个EndLayer类,继承于CCNode.因为我们得在其类方法中创建实例变量,所以我们得建立几个实例变量的属性.打开EndLayer.h文件,修改内…

转:(图文并茂)SQL Server 2005详细安装过程及配置

1、安装过程 注&#xff1a;在Windows7系统下安装SQL Server 2005时&#xff0c;可能会多次遇到提示兼容性问题的情况&#xff0c;此时不用理会&#xff0c;直接点击“运行程序”即可。首先解压下载到的SQL Server 2005压缩文件&#xff0c;如果还没有这个文件&#xff0c;可以…

2019年java安装步骤_win10的JAVA(jdk)2020年最新版安装教程心得

想学安卓反向解析&#xff0c;前期工作就把我折腾得够呛&#xff0c;java安装教程大多18年之前的&#xff0c;和现在的有一些不同&#xff0c;导致我按照网上的教程折腾了好几天都没安装成功&#xff0c;今天突然成功了&#xff0c;有点开心&#xff0c;迫不及待把自己的一些小…

蛋白质结构域的概念_Chapter1 蛋白质结构与功能2

本次回顾两大点&#xff1a;一、肽二、蛋白质结构————一、肽&#xff1a;概念&#xff1a;肽是由氨基酸通过肽键连接形成的线性分子。如上&#xff0c;该教学图涉及知识&#xff1a;1.肽键生成(最好能将反应式写出来)2.氨基酸残基residue3.肽的方向性N —> C4.肽命名5.肽…

css中的em 简单教程 -- 转

先附上原作的地址: https://www.w3cplus.com/css/px-to-em 习惯性的复制一遍~~~~ -------------------------------我是分界线----------------------------------- 什么是弹性布局&#xff1f; 用户的文字大小与弹性布局 用户的浏览器默认渲染的文字大小是“16px”&#xff0c…

ASP.NET MVC下的四种验证编程方式[续篇]

ASP.NET MVC下的四种验证编程方式[续篇] 原文:ASP.NET MVC下的四种验证编程方式[续篇]在《ASP.NET MVC下的四种验证编程方式》一文中我们介绍了ASP.NET MVC支持的四种服务端验证的编程方式&#xff08;“手工验证”、“标注ValidationAttribute特性”、“让数据类型实现IValida…

axios 配置loading_用Axios Element 实现全局的请求 loading

Kapture 2018-06-07 at 14.57.40.gif背景业务需求是这样子的&#xff0c;每当发请求到后端时就触发一个全屏的 loading&#xff0c;多个请求合并为一次 loading。现在项目中用的是 vue 、axios、element等&#xff0c;所以文章主要是讲如果使用 axios 和 element 实现这个功能。…

请求的内容似乎是脚本,因而将无法有静态文件处理程序来处理(http error 404.17、0x80070032、IIS7)...

由于工作需要&#xff0c;需要在在一台新的服务器上迁移 .Net Framwork 4.0的Web项目 环境:Windows Server 2008 SP2,IIS 7,.Net FrameWork 4.0,Classic 由于项目正常在老服务器上运行&#xff0c;所有直接将项目拷贝过来部署在IIS上面&#xff0c;配置后链接字符串等等之后访问…

ZooKeeper管理分布式环境中的数据

Reference: http://www.cnblogs.com/wuxl360/p/5817549.html 本节本来是要介绍ZooKeeper的实现原理&#xff0c;但是ZooKeeper的原理比较复杂&#xff0c;它涉及到了paxos算法、Zab协议、通信协议等相关知 识&#xff0c;理解起来比较抽象所以还需要借助一些应用场景&#xff0…

企业级应用架构(三)三层架构之数据访问层的改进以及测试DOM的发布

在上一篇我们在宏观概要上对DAL层进行了封装与抽象。我们的目的主要有两个&#xff1a;第一&#xff0c;解除BLL层对DAL层的依赖&#xff0c;这一点我们通过定义接口做到了&#xff1b;第二&#xff0c;使我们的DAL层能够支持一切数据访问技术,如Ado.net,EF,linq To Sql&#x…

ctr多少正常_亚马逊广告ctr多少才算合格,如何提升亚马逊CTR

亚马逊广告ctr多少才算合格&#xff0c;如何提升亚马逊CTR很多亚马逊卖家并不重视点击率&#xff0c;其实点击率和转化率是同样重要的。好的点击率可以提升产品listing的流量&#xff0c;间接影响转化&#xff0c;促进销量。一般来说亚马逊点击率多少算正常呢&#xff1f;CTR全…

在linux中,我为什么不能安装VMware Tools?

在linux中&#xff0c;我为什么不能安装VMware Tools&#xff1f; 应该是操作不正确导致&#xff0c;以下为linux安装VMware Tools的方法。 1、在安装Linux的虚拟机中&#xff0c;单击“虚拟机”菜单下的“安装Vmware-Tools” 2、出现以下菜单&#xff0c;证明Vmware-Tools的光…