原题
1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 以上三角形的数阵,第一行只有一个数1, 以下每行的每个数,是恰好是它上面的数,左上的数和右上数等3个数之和(如果不存在某个数,认为该数就是0)。 求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3。 输入n(n <= 1000000000) 函数头部: C/C++: int run(int n); java: public solution { public static int run(int n); }
namespace Triangle
{class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入层数:");
int n = int.Parse(Console.ReadLine());
Triangle.triangle(n);
Console.ReadKey();
}
}
class Triangle
{
public static void triangle(int n)
{
int res = -1;
if (n <= 2) res = -1;
else if (1 == n % 2)
res = 2;
else res = 3 + (n - 4) / 2 % 2;
Console.WriteLine(res);
}
}
}