日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

45行代码AC_2017年第八届蓝桥杯C/C++ A组第二题(广搜模板+解题报告)

發布時間:2024/2/28 c/c++ 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 45行代码AC_2017年第八届蓝桥杯C/C++ A组第二题(广搜模板+解题报告) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
問題描述

有9只盤子,排成1個圓圈。
其中8只盤子內裝著8只蚱蜢,有一個是空盤。
我們把這些蚱蜢順時針編號為 1~8
?
每只蚱蜢都可以跳到相鄰的空盤中,
也可以再用點力,越過一個相鄰的蚱蜢跳到空盤中。
?
請你計算一下,如果要使得蚱蜢們的隊形改為按照逆時針排列,
并且保持空盤的位置不變(也就是1-8換位,2-7換位,…),至少要經過多少次跳躍?


思考與分析

給出結論: 對于從某一狀態轉換到另一狀態,問最少需要多少步, 不出意外都是廣搜。

廣搜的優勢在于:第一次遍歷到的結果,一定就是最短路徑或最少步數,特殊類型題除外。

接下來考慮本題

首先, 將盤子們看做一個一維數組, 通過取余的方式使他們邏輯上相連

接下來,構造隊列,將盤子的初始狀態入隊,分四種情況(+1, +2 , -1 , -2 )進行廣搜, 將得到的結果判重后入隊。

判重的原因是:有可能搜索到相同排列順序的盤子們, 因此要定義判重數組, 或使用mep容器去重。

藍橋杯的廣搜題真的挺少的, 不過套模板一般都能很輕松的解出來。


#include<bits/stdc++.h> using namespace std;int s = 123456789, t = 876543219; int dir[4] = {-2, -1, 1, 2}, a[10]; bool index[1000000000]; //判斷情況是否重復int num(int a[]) { //數組轉變量 int sum = 0; for(int i = 0; i < 9; i++) {sum *= 10; sum += a[i];}return sum; } void bfs() {queue<int>q_index; //記錄位置情況queue<int>q_step; //記錄步數//隊列初始化 index[s] = 1;q_index.push(s);q_step.push(1);int flag = 0;while(flag != 1) {int x = q_index.front(); //出隊操作 int cnt = q_step.front();int k = 8, temp;while(x>0) {if(x%10==9) temp=k; //記下空盤的位置a[k--] = x%10;x /= 10; }for(int i = 0; i < 4; i++) {swap(a[temp], a[(temp+dir[i]+9)%9]); //位置移動 int j = num(a);if(!index[j]) {if(j==t) { cout<<cnt<<'\n'; flag=1; }index[j] = 1;q_index.push(j);q_step.push(cnt+1); } swap(a[temp], a[(temp+dir[i]+9)%9]); //空盤一共需要跳四次,因此交換后還需換回來 }q_index.pop();q_step.pop();} } int main() {bfs(); return 0; }

求三連 求三連! 啊!我第一個給博主三連!

總結

以上是生活随笔為你收集整理的45行代码AC_2017年第八届蓝桥杯C/C++ A组第二题(广搜模板+解题报告)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线免费观看不卡av | 波多野结衣在线播放视频 | 手机看片日韩国产 | 在线免费黄色 | 色图综合 | 国产精品久久麻豆 | 天天做天天干 | 久久亚洲免费视频 | 吻胸摸激情床激烈视频大胸 | 超碰在线观看91 | 精品国产自 | 在线观看免费观看 | 骚黄网站| 正在播放国产一区 | 国产第三区 | 国产美女在线精品 | 国产精品视频一区在线观看 | 天天干夜夜嗨 | 亚洲成人天堂 | 国产精品视频 | 亚洲无码精品在线观看 | 男人天堂成人 | 日日噜噜噜噜人人爽亚洲精品 | 天天插插插 | 亚洲精品国产成人 | 九色一区| 三级全黄视频 | 99一区二区 | 最新毛片网 | 日日日日日日 | 9l视频自拍蝌蚪9l视频 | 91尤物视频 | 国产精品77 | 久久久人人人 | 在线免费播放av | 爱插视频 | 亚洲中文字幕久久无码 | 91草草草 | 日韩精品免费一区二区夜夜嗨 | 欧美午夜视频 | 久草中文网 | www.午夜激情 | 探花视频在线观看 | 日韩一级中文字幕 | 少妇人妻偷人精品一区二区 | 国产亚洲性欧美日韩在线观看软件 | 天天天操操操 | 自拍偷拍第 | 99riAv国产精品无码鲁大师 | 亚洲日本不卡 | 中文字幕一区二区三区日韩精品 | 日本手机看片 | 中文字幕一区二区视频 | 日韩有码视频在线 | 麻豆高清 | 天天操天天操天天操天天操 | 黄色av免费播放 | 亚洲成人77777| 国产精品电影网站 | 欧美一区二区高清 | 亚洲精品无码成人 | 成人久久18免费网站图片 | av先锋资源网 | 国产第一精品视频 | xxx色 | 视频1区2区 | 一区二区片 | 97视频免费在线观看 | 色哟哟一区二区 | 日韩视频 中文字幕 | 97插插插| 日本亚洲最大的色成网站www | jizz色| 五月色婷 | а√天堂8资源在线官网 | 欧美夜夜| 人人看人人插 | 中文字幕在线观看高清 | 亚洲综合激情网 | 一级少妇毛片 | av免费在线播放 | 日本大乳美女 | 尤物视频在线免费观看 | 又污又黄的网站 | 日本精品一区二区三区在线观看 | 欧美18—19性高清hd4k | 欧美激情影音先锋 | 国产亚洲精品久久久久久无几年桃 | 精品视频导航 | 久久成人网18网站 | 国产精品99久久 | 成人禁污污啪啪入口 | av大片在线观看 | 天堂综合网 | 日韩一区二区三区精 | 一区二区日韩在线观看 | 黄色免费国产 | 中文字幕一区av | 国产熟女一区二区 |