У меня есть два списка (Matches и Motifpoisitions). Я хочу объединить список следующим образом: Для всех i, для которых i% 2 = 1, ищите Motifpoistions (k) = Matches (i) +1. А затем установите Matches (i) = Motifpostions (k + 1). Кроме того, я хочу удалить i и i-1, если k не может быть найдено.
Например, если совпадения (1,3,10,12) и мотивы (4,8), то конечный вектор должен быть (1,8). Поскольку 4 = 3 + 1, я заменил 3 на 8. А поскольку в Мотивации нет значения, равного 12 + 1, удалите 10 и 12.
Вот что я сейчас пытаюсь
for( int i = 1; i < matches.size(); i = i+2){
int motifmatched = 0;
for(int k = 0; k <motifpositions.size(); k++){
if(motifpositions.get(k) == matches.get(i)+1){
matches(i) = motifpositions(k+1);
motifmatched ++;
}
}
if(motifmatched ==0){
matches.remove(i);
matches.remove(i-1);
}
}