PROJECT EULER · #0524
First Sort 排序 II
First Sort II
考虑以下对列表进行排序的算法:
- 1.从列表开头开始,依次检查每对相邻元素。
- 2.如果元素无序:
- a.将该对中的最小元素移到列表的开头。
- b.从步骤 1 重新启动该过程。
- 3.如果所有对都按顺序排列,则停止。
例如,列表
( 和 顺序不正确,因此将 移到列表前面) ( 和 顺序不正确,因此将 移到列表前面) ( 和 顺序不正确,因此将 移到列表前面) ( 和 顺序不正确,因此将 移到列表前面) ( 和 顺序不正确,因此将 移到列表前面) (列表现已排序)
令
我们可以按字典顺序列出整数
令
对于
| P | I4(P) | F(P) | |
|---|---|---|---|
| {1, 2, 3, 4} | 1 | 0 | Q(4, 0) = 1 |
| {1, 2, 4, 3} | 2 | 4 | Q(4, 4) = 2 |
| {1, 3, 2, 4} | 3 | 2 | Q(4, 2) = 3 |
| {1, 3, 4, 2} | 4 | 2 | |
| {1, 4, 2, 3} | 5 | 6 | Q(4, 6) = 5 |
| {1,4,3,2} | 6 | 4 | |
| {2, 1, 3, 4} | 7 | 1 | Q(4, 1) = 7 |
| {2, 1, 4, 3} | 8 | 5 | Q(4, 5) = 8 |
| {2,3,1,4} | 9 | 1 | |
| {2,3,4,1} | 10 | 1 | |
| {2,4,1,3} | 11 | 5 | |
| {2, 4, 3, 1} | 12 | 3 | Q(4, 3) = 12 |
| {3, 1, 2, 4} | 13 | 3 | |
| {3,1,4,2} | 14 | 3 | |
| {3,2,1,4} | 15 | 2 | |
| {3,2,4,1} | 16 | 2 | |
| {3,4,1,2} | 17 | 3 | |
| {3,4,2,1} | 18 | 2 | |
| {4, 1, 2, 3} | 19 | 7 | Q(4, 7) = 19 |
| {4,1,3,2} | 20 | 5 | |
| {4,2,1,3} | 21 | 6 | |
| {4,2,3,1} | 22 | 4 | |
| {4,3,1,2} | 23 | 4 | |
| {4,3,2,1} | 24 | 3 |
令
求
题解待补充
这道题的题目已收录,解题思路、代码和答案将在后续补充。