我有一个输入,并且我想使用以下逻辑基于输入分布来修改现有列表值。
int distributeVal = 7;
List<int> validationList = new List<int>();
distributeVal可以是任何整数,并且应该在validationList中平均分配。少数情况:
distributeVal validationList validationList(Updated)
7 {5,5,5} {5,2}
7 {5,6,5} {5,2}
7 {6,5,5} {6,1}
8 {2,2,2,3} {2,2,2,2}
8 {1} {1} (remaining 7 ignored)
8 {5,2,7} {5,2,1}
2 {5,5,5} {2}
3 {1,1,5} {1,1,1}
8 {1,45,16} {1,7}
0 {1,50,50} {}
validationList的分配应基于FCFS的允许列表值。我尝试执行此操作,但由于存在很多循环和条件,因此需要根据列表值划分distributedVal,然后进行修改。我怎样才能最好地做到这一点?谢谢。
您可以尝试Linq
这里是一个非Linq答案,它使用直接函数来计算这些值: