using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
static int iCount = 0;
static void Main(string[] args)
{
Console.WriteLine("hello world! ");
List<int> lsi = new List<int>();
Console.WriteLine(lsi.Count.ToString());
for (int i = 1; i <= 6; i++)
lsi.Add(i);
FullSequence(0, 6, lsi);
Console.WriteLine(iCount.ToString());
}
static void FullSequence(int i_start, int i_count, List<int> ls)
{
if (i_start == i_count - 1)
{
for (int i = 0; i < i_count; i++)
Console.Write(ls[i].ToString());
Console.WriteLine();
iCount++;
}
else
{
FullSequence(i_start + 1, i_count, ls);
for (int i = i_start+1 ; i < i_count; i++)
{
int temp = ls[i];
ls[i] = ls[i_start];
ls[i_start] = temp;
FullSequence(i_start+1, i_count, ls);
temp = ls[i];
ls[i] = ls[i_start];
ls[i_start] = temp;
}
}
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication2
{
class Program
{
static int iCount = 0;
static void Main(string[] args)
{
Console.WriteLine("hello world! ");
List<int> lsi = new List<int>();
Console.WriteLine(lsi.Count.ToString());
for (int i = 1; i <= 6; i++)
lsi.Add(i);
FullSequence(0, 6, lsi);
Console.WriteLine(iCount.ToString());
}
static void FullSequence(int i_start, int i_count, List<int> ls)
{
if (i_start == i_count - 1)
{
for (int i = 0; i < i_count; i++)
Console.Write(ls[i].ToString());
Console.WriteLine();
iCount++;
}
else
{
FullSequence(i_start + 1, i_count, ls);
for (int i = i_start+1 ; i < i_count; i++)
{
int temp = ls[i];
ls[i] = ls[i_start];
ls[i_start] = temp;
FullSequence(i_start+1, i_count, ls);
temp = ls[i];
ls[i] = ls[i_start];
ls[i_start] = temp;
}
}
}
}
}