×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
Problems
Submissions
Rank
Forum
Contest
Login
Register
回『觀念練習』
d001:
Jumping Array Puzzle 來了
Tags :
A*
BFS
IDS
Accepted rate :
10人
/
11人
( 91% )
[非即時]
評分方式:
Tolerant
最近更新 : 2020-05-12 23:05
Content
有一個 比 8-puzzle 與 15-puzzle 還要簡單的遊戲,名字叫做 Jumping Array Puzzle。
玩的棋盤只有一個橫列,每次玩的時候會有一個初始盤面。
舉例來說,假設有一個初始盤面是 102 , 0 代表沒有棋子,另外兩個位置分別為1與2兩個棋子。
棋子的種類總共有 1~9 種,分別就用 1~9 編號代表。
每次移動的時候,玩家可以選擇四種狀況:
{左移一格,右移一格,左跳一格,或是右跳一格},只要棋子想要移動的地方是空白即可。
給定一個 初始盤面 與 目標盤面,請找出從初始盤面到目標盤面所需要最少的移動次數?
舉例來說 ,初始盤面是 102 目標盤面是 201
1右移一格 012
2左跳一格 210
1右移一格 201
最少需要三步可以達到目標盤面,輸出便為 3。
Input
每筆測試資料會有兩行由0~9的數字組成的盤面,分別為初始盤面與目標盤面,例如:
盤面的長度 為 n ,其中 3 ≤ n ≤ 30
102
201
Output
請輸出一個數字,代表最少可以達到目標盤面的步數
Sample Input
123101111 111101321
Sample Output
15
測資資訊:
記憶體限制: 128 MB
不公開 測資點#0 (15%): 1.0s , <1K
不公開 測資點#1 (15%): 2.0s , <1K
不公開 測資點#2 (25%): 3.0s , <1K
不公開 測資點#3 (15%): 2.0s , <1K
不公開 測資點#4 (30%): 3.0s , <1K
Hint :
Tags:
A*
BFS
IDS
出處:
[管理者:
zero
(管理員)
]
Status
Forum
排行
ID
User
Problem
Subject
Hit
Post Date
沒有發現任何「解題報告」