using System.Linq;classKata{publicstaticintRiders(int[] s)=> s.Aggregate(new[]{0,1},(t, i)=> t[0]+ i >100?new[]{i, t[1]+1}:new[]{t[0]+ i, t[1]})[1];}
答案2:
classKata{publicstaticintRiders(int[] stations){int res =1;int sum =0;for(int i =0; i < stations.Length; i++){
sum += stations[i];if(sum >100){
res++;
sum =0;
i--;continue;}}return res;}}
答案3:
using System;using System.Collections.Generic;using System.Linq;classKata{publicstaticdecimal distanseMax =100;publicstaticintRiders(int[] stations){int count =1;decimal d =0;foreach(int v in stations){
d += v;if(d> distanseMax){
count++;
d = v;}}return count;}}
答案4:
classKata{publicstaticintRiders(int[] stations){var riders =1;var current =0;foreach(var dist in stations){
current += dist;if(current >100){
current = dist;
riders++;}}return riders;}}
答案5:
publicclassKata{publicstaticintRiders(int[] stations ){var ridersCount =1;if( stations ==null|| stations.Length ==0){return ridersCount;}var miles =0;for(int i =0; i < stations.Length; i++){if( miles + stations [ i ]>100){
miles =0;
ridersCount +=1;}
miles += stations [ i ];}return ridersCount;}}
答案6:
using System;using System.Linq;classKata{publicstaticintRiders(int[] stations){int rider =100, riders_count =1;for(int i =0; i < stations.Length; i++){if(rider - stations[i]<0){
rider =100;
riders_count++;}
rider -= stations[i];}return riders_count;}}
答案7:
classKata{publicstaticintRiders(int[] stations){int sum =0;int riders =1;for(int i =0; i < stations.Length; i++){
sum += stations[i];if(sum >100){
riders++;
sum =0;
i--;}}return riders;}}
答案8:
using System;classKata{publicstaticintRiders(int[] stations){int res =1;int currDist =0;foreach(int i in stations){if(currDist + i >100){
res++;
currDist =0;}
currDist += i;}return res;}}
答案9:
classKata{publicstaticintRiders(int[] stations){int riders =1;int sum =0;for(int i =0; i < stations.Length; i++){
sum += stations[i];if(sum >100){
riders++;
sum =0;
i--;}}return riders;}}