【代码最简化】打印一个“回”字图形,看谁写的代码最少。
注:系统标识符和自定义标识符都只计为一个字符。即:“int”和“System.Int32”都只算一个字符。
可以引用任何一个.NET自带的程序库,但不允许使用第三方控件和程序库。建议使用VS2005和VS2008环境。
调试代码:
C# code
private void PrintBox()
{
// TODO : 自由发挥
}
private void button1_Click(object sender, EventArgs e)
{
PrintBox();
}
------解决方案--------------------先把数字放入数组然后打印数组。
只说说想法吧。
------解决方案--------------------潜力贴先留名
------解决方案--------------------其实应该比逻辑,而不是比谁的代码少。
C# code
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;
}
}
}
------解决方案--------------------
先顶下
学习