2013-04-22 52 views
3

如果我有5位整数(A,B,C,d,E)是什么的最短途径我可以检查是否至少其中3是等效的。如果y值x分别等效

ex。

a==1 
b==1 
c==2 
d==3 
e==4 
//returns false 

ex. 
a==1 
b==1 
c==1 
d==3 
e==4 
//returns true 
+0

你是什么意思的最快?你担心这里的表演吗? – nmat 2013-04-22 01:25:15

+2

那么,我只是不想要一个大规模的循环...更好的措辞应该是“什么是最短的方式来检查,如果...” – 2013-04-22 01:25:53

+0

@nmat编辑它!谢谢! – 2013-04-22 01:26:16

回答

9

这应该适用于所有情况:

bool match = array.GroupBy(n => n).Any(g => g.Count() >= 3); 
+0

灿烂的!!!! :) 谢谢! – 2013-04-22 01:31:02

+3

只是要挑选一点......不是比'Max'更好吗?不需要检查最大的组,只要检查其中一个是否有3个或更多的元素。 – 2013-04-22 01:32:20

+0

@JuliánUrbano你是对的。我将编辑更改,谢谢。 – TheEvilPenguin 2013-04-22 01:34:07

相关问题