日期:2014-05-20 浏览次数:20922 次
private void PrintBox()
{
// TODO : 自由发挥
}
private void button1_Click(object sender, EventArgs e)
{
PrintBox();
}
class Program
{
static Dictionary<string, int> buff;
static void Main(string[] args)
{
do
{
Console.Write("输入一个整数...");
int x = int.Parse(Console.ReadLine());
buff = new Dictionary<string, int>();
int y = think(x, 1);
print(y);
} while (true);
}
static void print(int 行数)
{
for (int i = 1; i <= 行数; i++)
{
for (int h = 1; h <= 行数; h++)
Console.Write(buff[i.ToString() + "," + h.ToString()]);
Console.WriteLine();
}
}
static int think(int x, int 开始行)
{
if (x == 1)
{
buff.Add(开始行.ToString() + "," + 开始行.ToString(), 1);
return 开始行;
}
else
{
int e = think(x - 1, 开始行 + 1);
for (int i = 开始行; i <= e + 1; i++)
{
buff.Add(开始行.ToString() + "," + i.ToString(), x);
buff.Add((e + 1).ToString() + "," + i.ToString(), x);
}
for (int i = 开始行 + 1; i <= e; i++)
{
buff.Add(i.ToString() + "," + 开始行.ToString(), x);
buff.Add(i.ToString() + "," + (e + 1).ToString(), x);
}
return e + 1;
}
}
}
------解决方案--------------------
先顶下
学习