k**l 发帖数: 2966 | 1 我的brutal想法是建立三个pool
pool1: singles's position
pool2: misplaced pairs a->i1, j1; b->i2, j2,不相邻
pool3: inplaced pairs
目标消灭pool2,从a开始 i1 +/-1,j1+/-1位置可以放另一个a, 这四个位置里先看有
没有singles(pool1),有就换来;如果没有,看有没有其他misplace pairs (pool2);
最后再看pool3.用pool3里的元素会导致pool3减一又加一,得弄个从左到右的固定顺
序防止死循环. |
|