したがって、基本的に、質問は配列内の数値の合計を見つけるように求めます。ただし、「13」という数字は非常に不運なので、「13」と「13」の直後の数字はカウントされません。
これは私がしたことです:
public int sum13(int[] nums) {
int d = 0;
int sum = 0;
for (int i=0;i<nums.length;i++){
if(nums[i] == 13){
d = i;
break;
}
else{
d = nums.length;
}
}
for(int i=0;i<d;i++){
sum = sum + nums[i];
}
return sum;
}
ほとんどのテストに合格しましたが、合計から 13 のすぐ隣の数字を除外する方法をまだ理解できません。
たとえば、sum13({1, 2, 2, 1, 13}) → 6 パス! sum13({13, 1, 13}) → 0 PASSES! ただし、 sum13({13, 1, 2, 13, 2, 1, 13}) → 3 RETURNS 0 は、13 の最初のインスタンスで停止するためです。