Masing-masing pasangan disimbolkan dengan S1 I1, S2 I2, dan S3 I3
Algoritmanya:
{di desa A: S1, I1, S2, I2, S3, I3 --- di desa B: belum ada}
I1 dan I2 menyeberang ke desa B
{di desa A: S1, S2, S3, I3 --- di desa B: I1, I2}
I2 kembali ke desa A
{di desa A: S1, S2, I2, S3, I3 --- di desa B: I1}
I2 dan I3 menyebrang ke desa B
{di desa A: S1, S2, S3 --- di desa B: I1, I2, I3}
I3 kembali ke desa A
{di desa A: S1, S2, S3, I3 --- di desa B: I1, I2}
S1 dan S2 menyeberang ke desa B
{di desa A: S3, I3 --- di desa B: S1, I1, S2, I2}
S2 dan I2 kembali ke desa A
{di desa A: S2, I2, S3, I3 --- di desa B: S1, I1}
S2 dan S3 menyeberang ke desa B
{di desa A: I2, I3 --- di desa B: S1, I1, S2, S3}
I1 kembali ke desa A
{di desa A: I1, I2, I3 --- di desa B: S1, S2, S3}
I1 dan I2 menyeberang ke desa B
{di desa A: I3 --- di desa B: S1, I1, S2, I2, S3}
I2 kembali ke desa A
{di desa A: I2, I3 --- di desa B: S1, I1, S2, S3}
I2 dan I3 menyebrang ke desa B
{di desa A: habis --- di desa B: S1, I1, S2, I2, S3, I3}