一旦我运行下面的本地,它就会快速响应,但是当我将它提交给Kattis时,它只超过2/5而且我的时间限制超过了。 有什么建议吗? 我已尝试使用10000个数字的输入文件,它仍然是快速localy:S
using System;
namespace phonelist
{
class Program
{
static void Main(string[] args)
{
int nrOfPhoneNrs = 0;
bool consistent;
int nrOfTestCases = Convert.ToInt32(Console.ReadLine().Trim());
for (byte i = 0; i < nrOfTestCases; i++)
{
consistent = false;
nrOfPhoneNrs = Convert.ToInt32(Console.ReadLine().Trim());
string[] phList = new string[nrOfPhoneNrs];
int n = 0;
while (n < nrOfPhoneNrs)
{
phList[n] = Console.ReadLine();
n++;
}
Array.Sort(phList);
int runs = nrOfPhoneNrs - 1;
for (int p = 0; p < runs; p++)
{
if (phList[p + 1].StartsWith(phList[p]))
{
consistent= true;
break;
}
}
Console.WriteLine(consistent? "NO" : "YES");
}
}
}
}
答案 0 :(得分:0)
我认为您的主要问题是您使用的是StartsWith
和Array.Sort
方法。
我不想给你太详细的建议(这样你仍然可以自己解决)但是我只是建议考虑一个不同的数据结构而不是字符串数组,也许是HashSet<string>
。