静力试验的主要方法
本文关键字:方法 | 更新日期: 2023-09-27 18:17:21
当我在不使用静态方法的情况下运行程序时,它会说…
运行解决方案…编译成功。示例测试:[- 1,3,- 4,5,1,- 6,2,1]好吧您的代码在语法上是正确的,并且在示例测试中正常工作。
当我使用静态方法时…
static void Main(string[] args)
{
int difference = new Solution().solution(new int[] { -1, 3, -4, 5, 1, -6, 2, 1});
Console.WriteLine(difference);
Console.ReadKey();
}
I was getting error…
运行解决方案…编译器输出:编译失败:2个错误,0个警告user.cs(16,24):错误CS0017: Program
user.exe' has more than one entry point defined:
SolutionWrapper.Main(string[])'cs(40,17):错误CS0017:程序user.exe' has more than one entry point defined:
Solution.Main(string[])'检测到一些错误。
我正在看磁带平衡挑战,这就是我想做的,如果我删除静态void方法,就不会有错误....
static void Main(string[] args)
{
int difference = new Program().solution(new int[] { -1, 3, -4, 5, 1, -6, 2, 1});
Console.WriteLine(difference);
Console.ReadKey();
}
public int solution(int[] A)
{
// write your code in C# 6.0 with .NET 4.5 (Mono)
var length = A.Length;
if (length == 1) return A[0];
if (length == 2) return Math.Abs(A[0] - A[1]);
var leftSum = 0;
var rightSum = 0;
for (var i = 0; i < length; i++)
{
rightSum += A[i];
}
var difference = int.MaxValue;
for (var i = 0; i < length - 1; i++)
{
var value = A[i];
leftSum += value;
rightSum -= value;
difference = Math.Min(difference, Math.Abs(rightSum - leftSum));
if (difference == 0) return 0;
}
return difference;
}
是不是不使用静态方法?
这样做…会成功的。
using System;
class Solution {
public int solution(int[] A) {
// write your code in C# 6.0 with .NET 4.5 (Mono)
var length = A.Length;
if (length == 1) return A[0];
if (length == 2) return Math.Abs(A[0] - A[1]);
var leftSum = 0;
var rightSum = 0;
for (var i = 0; i < length; i++)
{
rightSum += A[i];
}
var difference = int.MaxValue;
for (var i = 0; i < length - 1; i++)
{
var value = A[i];
leftSum += value;
rightSum -= value;
difference = Math.Min(difference, Math.Abs(rightSum - leftSum));
if (difference == 0) return 0;
}
Console.WriteLine(difference);
return difference;
}
}
你得到这个错误,因为你有两个static public void Main()
的定义在你的代码。
由于其中一个是自动生成的,您可能无法轻松地删除它。您可以通过在项目属性>应用程序设置中设置项目的启动对象来解决这个问题,或者-如果手动构建-使用/main
编译器选项指定您想要的Main
的路径作为入口点。