<1> |
กำหนดให้ x0 เป็นลิสต์ของสตริง
- ให้ x1 คือลิสต์ที่ได้จากการนำสองตัวติดกันใน x0 มา "รวม" กัน
นิยามการ "รวม" สตริงสองตัวที่ติดกันในลิสต์คือ การนำ
ตัวอักษรแรกของตัวซ้าย มาต่อกับ ตัวอักษรสุดท้ายของตัวขวา
เช่น x0 = ['Aa', 'Bb', 'Cc', 'Dd'] จะได้
x1 = ['A'+'b', 'B'+'c', 'C'+'d'] = ['Ab', 'Bc', 'Cd']
- ให้ x2 คือลิสต์ที่ได้จากการนำสองตัวติดกันใน x1 มา "รวม" กัน
ต่อจากตัวอย่างที่แล้ว ได้ x2 = ['A'+'c', 'B'+'d'] = ['Ac', 'Bd']
- ให้ x3 คือลิสต์ที่ได้จากการนำสองตัวติดกันใน x2 มา "รวม" กัน
ต่อจากตัวอย่างที่แล้ว ได้ x3 = ['A'+'d'] = ['Ad']
- แล้วก็ไม่สามารถหา x4 ได้แล้ว เพราะ x3 มีตัวเดียว
จงเขียนฟังก์ชัน f(x0) ที่
- รับ x0 เป็นลิสต์ของจำนวนเต็มมีข้อมูลอย่างน้อย 1 ตัว
- คืนลิสต์ซ้อนลิสต์ [x0, x1, x2, ..., xk]
โดยที่ x1, x2, ... เป็นลิสต์ที่หาได้ด้วยวิธีข้างต้น
xk คือลิสต์ที่เหลือแค่ตัวเดียว
เช่น f(['Aa', 'Bb', 'Cc', 'Dd']) ได้
[['Aa', 'Bb', 'Cc', 'Dd'], ['Ab', 'Bc', 'Cd'], ['Ac', 'Bd'], ['Ad']]
|