-2
我問了一個問題,前一段時間 - >how to count conditioned continuous values in a list with linq?如何用linq計算列表中的條件連續值? (Revized)
這個問題的回答@Fung。但是,我改變了這個問題的一些規則。新的條件:
var query = Enumerable.Range(0, 1440).Select((n, index) =>
{
if ((index >= 480 && index <= 749) || (index >= 810 && index <= 999) || (index >= 1080 && index <= 1099) || (index>=1200 && index <= 1299))
return 0;
else if ((index >= 750 && index <= 809) || (index >= 1100 && index <= 1199))
return 1;
else
return 2;
});
所以,我能找到持續多少指標有「0」值,哪些是他們的指標 - 即使是「1」(而不是2)中斷 - ?例如;
query[480]=query[481]=query[482]....query[749] = 0,
query[750]=query[751]...query[809] = 1,
query[810]=query[811]....query[999] = 0,
query[1000]?query[1001]...query[1079] = 2,
query[1080]=query[1081]....query[1099] = 0,
query[1100]=query[1101]....query[1199] = 1,
query[1200]=query[1201]....query[1299] = 0, etc..
所以,答案是270(前1)+ 190(1後)= 460 雖然1080和1099之間具有索引0,它們不應該被認爲是因爲先前的值是 「2」。
此外,應該考慮從1080到1099和從1200到1299的值,因爲它們也有新的0 - 1 - 0系列。而且,這個系列應該被列入另一個列表。有沒有辦法做到這一點?
我現在已經這些結果:
但是,因爲它由 「2」 分,我希望他們在另一個列表:
不幸的是,事實並非如此。 – 1teamsah
和問題是?所有的組都被標記... –
我甚至編輯它使它分組和分裂成列表 –