合并若干三元组以形成目标三元组
作者:互联网
合并若干三元组以形成目标三元组
题目要求合并成指定三元组,那么我们不难发现,当当前数组中有元素大于target中对应位置时,我们就可以丢弃该数组,继续判断下一个数组,拿到符合条件的数组中的各个位置最大值就可以。
以下是代码实现:
public boolean mergeTriplets(int[][] triplets, int[] target) {
int[] res = {0,0,0};
for(int i=0;i<triplets.length;i++){//对最外围数组进行遍历
//当前数组若有一项大于target 则舍弃该数组 对下一数组进行比较
if(triplets[i][0]>target[0] || triplets[i][1]>target[1] || triplets[i][2]>target[2]){
continue;
}else{
//取当前数组与存储最大值两数的最大值
res[0] = Math.max(res[0],triplets[i][0]);
res[1] = Math.max(res[1],triplets[i][1]);
res[2] = Math.max(res[2],triplets[i][2]);
}
}
// for(int i =0;i<3;i++){
// System.out.println(res[i]);
// }
//对结果数组中的值与目标数组的值进行判断后返回
return (res[0]==target[0]) && (res[1]==target[1]) && (res[2]==target[2]);
}
加油~
标签:target,int,res,合并,三元组,数组,triplets,若干 来源: https://blog.csdn.net/weixin_45859104/article/details/117911547