数组A的部分数字子序列是一个整数子序列,其中每个连续的整数至少有1个公共数字
我保留了一本包含 0 到 9 个字符的字典以及每个后续字符的计数。然后我遍历整数数组中的所有值并获取每个数字并检查我的字典中该数字的计数。
public static void Main(string[] args)
{
Dictionary<char, int> dct = new Dictionary<char, int>
{
{ '0', 0 },
{ '1', 0 },
{ '2', 0 },
{ '3', 0 },
{ '4', 0 },
{ '5', 0 },
{ '6', 0 },
{ '7', 0 },
{ '8', 0 },
{ '9', 0 }
};
string[] arr = Console.ReadLine().Split(' ');
for (int i = 0; i < arr.Length; i++)
{
string str = string.Join("", arr[i].Distinct());
for (int j = 0; j < str.Length; j++)
{
int count = dct[str[j]];
if (count == i || (i > 0 && arr[i - 1].Contains(str[j])))
{
count++;
dct[str[j]] = count;
}
else dct[str[j]] = 1;
}
}
string s = dct.Aggregate((l, r) => l.Value > r.Value ? l : r).Key.ToString();
Console.WriteLine(s);
}
例如,12 23 231 答案是 2,因为它出现了 3 次
该数组可以包含 10^18 个元素。
有人可以帮我找到最佳解决方案吗?该算法不适合处理数组中的大数据。
万千封印
桃花长相依
相关分类