タイトル説明
自然数nを出力するように配置された全ての別個の許容配列、すなわち、n個の全体構成の任意の数を生成し、重複する番号が表示さが必要です。
入出力フォーマット
入力フォーマット:
N(1≤n≤9)
出力フォーマット:
すべての数字は、1〜N、各行の配列からなる配列を繰り返しません。各番号5は、多くの場合、広い予約します。
サンプル入力と出力
入力サンプル#1:
コピー
3
出力サンプル#1:
コピー
1 2 3 1 2 3 2 1 3 2 1 3 1 2 3 2 1 この問題に対する解決策は、直接呼び出すことができる機能があり、完全なパーミュテーション問題をemmm OH
// luogu-判定部イネーブル-O2 の#include <cstdioを> する#include <iostreamの> する#include <cmath> の#include <cstdlib> の#include <CStringの> する#include <アルゴリズム> のtypedef 長い 長LL。 使用して 名前空間はstdを、 int型のn、[ 18 ]。 INT メイン(){ // freopenは( "1706.in"、 "R"、STDIN)。 // freopenは( "1706.out"、 "W"、STDOUT)。 scanf関数(" %のD "、&N) ; iが<= N; iは++ ) {[I] = I。printf(" %dの" 、I)。} 一方(next_permutation(A + 1、+ 1 + N)){ のprintf(" の\ n " ); 用(int型 i = 1 ; iが<= N iが++ ) のprintf(" %dの" 、[I])。 } 戻り 0 。 }