信息學奧賽一本通 1449:【例題2】魔板

題目

1449:【例題2】魔板

分析

首先注意:輸入是按順時針給出的,但我們處理時需要按正常順序排,可以用以下代碼讀入

string s(8, '0');  // 初始化全零字符串
cin>>s[0]>>s[1]>>s[2]>>s[3];
cin>>s[7]>>s[6]>>s[5]>>s[4];

然后在搜索中,可以使用map,也能用康托展開,就是編程繁瑣一些。

三種操作的代碼表示

A操作

就是上下兩行交換,for從0遍歷到3,交換s[i]和s[i+4]即可

string opA(string f) {string s = f;for (int i = 0; i < 4; i++) swap(s[i], s[i + 4]);return s;
}

B操作

按順序給每格標為t0,t1,...,t7,如下圖

執行一次B操作后,變成這樣:

因此,代碼如下:

string opB(string f)
{string s = f;swap(s[0], s[3]);swap(s[4], s[7]);swap(s[1], s[3]);swap(s[5], s[7]);swap(s[2], s[3]);swap(s[6], s[7]);return s;
}

C操作

操作一次后如下:

代碼:

string opC(string f)
{string s = f;swap(s[1], s[2]);swap(s[1], s[6]);swap(s[1], s[5]);return s;
}

?知道這些就不難了,剩下的就是廣搜。

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/73316.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/73316.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/73316.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Unity開發的抖音小游戲接入抖音開放平臺中的流量主(抖音小游戲接入廣告)

前言:作者在進行小游戲審核版本的過程中,碰到了下列問題,所以對這個抖音小游戲接入廣告研究了下。 還有就是作者的TTSDK版本號是6.2.6,使用的Unity版本是Unity2022.3.29f1,最好和作者的兩個版本號保持一致,因為我發現TTSDK舊版的很多函數在新版中就已經無法正常使用了,必…

【xv6操作系統】系統調用與traps機制解析及實驗設計

【xv6操作系統】系統調用與traps機制解析及實驗設計 系統調用相關理論系統調用追溯系統調用實驗設計Sysinfo&#x1f6a9;系統調用總結&#xff08;結合trap機制&#xff09; traptrap機制trap代碼流程Backtrace實驗alarm實驗 系統調用 相關理論 隔離性&#xff08;isolation)…

Docker文件夾上傳秘籍Windows下的高效傳輸之道

哈嘍,大家好,我是木頭左! 一、理解Docker容器與Windows文件系統的差異 在深入探討如何從 Windows 系統將文件夾及遞歸文件夾和文件上傳到 Docker 容器之前,有必要先明晰 Docker 容器與 Windows 文件系統之間存在的本質差異。 (一)Docker 容器的文件系統特性 Docker 容…

08 | 實現版本號打印功能

提示&#xff1a; 所有體系課見專欄&#xff1a;Go 項目開發極速入門實戰課&#xff1b;歡迎加入 云原生 AI 實戰 星球&#xff0c;12 高質量體系課、20 高質量實戰項目助你在 AI 時代建立技術競爭力&#xff08;聚焦于 Go、云原生、AI Infra&#xff09;&#xff1b;本節課最終…

在微信小程序或前端開發中,picker 和 select 都是用戶交互中用于選擇的組件,但它們在功能、設計和使用場景上有一定的區別

在微信小程序或前端開發中&#xff0c;picker 和 select 都是用戶交互中用于選擇的組件&#xff0c;但它們在功能、設計和使用場景上有一定的區別。 1. picker 的特點 描述&#xff1a; picker 是微信小程序中的原生組件&#xff0c;通常用于選擇單項或多項值&#xff0c;如時…

PMP 證書的含金量怎么樣?

pmp含金量&#xff0c;這是一個很有爭議的話題&#xff0c;我根據我以往的面試跟工作經歷對 PMP 也有幾點看法&#xff0c;想跟大家聊一聊。 一、如果真心想做項目管理&#xff0c;PMP 一定要去考一個 現在的早已不是憑經驗做項目的時代了&#xff0c;各大企業都追求專業式的…

Springboot連接neo4j

?一、Spring Data Neo4j 核心知識體系 ?1. 核心概念 ?圖數據庫特性&#xff1a; 數據以 ?節點&#xff08;Node&#xff09;? 和 ?關系&#xff08;Relationship&#xff09;? 形式存儲&#xff0c;支持屬性&#xff08;Property&#xff09;。查詢語言&#xff1a;Cyp…

我與DeepSeek讀《大型網站技術架構》- 大型網站架構技術一覽與Web開發技術發展歷程

文章目錄 大型網站架構技術一覽1. 前端架構2. 應用層架構3. 服務層架構4. 存儲層架構5. 后臺架構6. 數據采集與監控7. 安全架構8. 數據中心機房架構 Web開發技術發展歷程一、靜態HTML階段二、CGI腳本模式階段三、服務器頁面模式階段 大型網站架構技術一覽 1. 前端架構 瀏覽器…

Python數據類型進階——詳解

—— 小 峰 編 程 目錄 1.整型 1.1 定義 1.2 獨有功能 1.3 公共功能 1.4 轉換 1.5 其他 1.5.1 長整型 1.5.2 地板除(除法&#xff09; 2. 布爾類型 2.1 定義 2.2 獨有功能 2.3 公共功能 2.4 轉換 2.5 其他 做條件自動轉換 3.字符串類型 3.1 定義 3.2 獨有功能…

GNU Binutils 全工具指南:從編譯到逆向的完整生態

1. GNU Binutils 全工具指南&#xff1a;從編譯到逆向的完整生態 1. GNU Binutils 全工具指南&#xff1a;從編譯到逆向的完整生態 1.1. 引言1.2. 工具分類速查表1.3. 核心工具詳解 1.3.1. 編譯與匯編工具 1.3.1.1. as&#xff08;匯編器&#xff09;1.3.1.2. gcc&#xff08;…

docker python:latest鏡像 允許ssh遠程

跳轉到家目錄 cd創建pythonsshdockerfile mkdir pythonsshdockerfile跳轉pythonsshdockerfile cd pythonsshdockerfile創建Dockerfile文件 vim Dockerfile將Dockerfile的指令復制到文件中 # 使用 python:latest 作為基礎鏡像 # 如果我的鏡像列表中沒有python:latest鏡像&…

c++的基礎排序算法

一、快速排序 1. 選擇基準值&#xff08;Pivot&#xff09; 作用 &#xff1a;從數組中選擇一個元素作為基準&#xff08;Pivot&#xff09;&#xff0c;用于劃分數組。常見選擇方式 &#xff1a; 固定選擇最后一個元素&#xff08;如示例代碼&#xff09;。隨機選擇&#xf…

焊接機器人與線激光視覺系統搭配的詳細教程

以下是關于焊接機器人與線激光視覺系統搭配的詳細教程&#xff0c;包含核心程序框架、調參方法及源碼實現思路。本文綜合了多個技術文檔與專利內容&#xff0c;結合工業應用場景進行系統化總結。 一、系統硬件配置與視覺系統搭建 1. 硬件組成 焊接機器人系統通常由以下模塊構…

jmeter分布式原理及實例

一、執行原理 二、相關注意事項 關閉防火墻所有上網控制機、代理機、服務器都在同一個網絡上所有機器的jmeter和java版本必須一致關閉RMI.SSL開關 三、配置和執行 配置&#xff1a; 修改bin/jmeter.properties文件&#xff1a; 代理機&#xff1a; 修改服務端口&#xff1…

LinuX---Shell腳本創建和執行

概述&#xff1a; 它是一個命令行解釋器&#xff0c;接收應用程序/用戶命令&#xff0c;然后調用操作系統內核。 Shell還是一個功能強大的編程語言&#xff0c;易編寫、易調試、靈活性強。 Linux提供的Shell解析器有 atguiguubuntu:~$ cat /etc/shells # /etc/shells: valid …

FPGA中級項目1——IP核(ROM 與 RAM)

FPGA中級項目1——IP核&#xff08;ROM 與 RAM&#xff09; IP核簡介 在 FPGA&#xff08;現場可編程門陣列&#xff09;設計中&#xff0c;IP 核&#xff08;Intellectual Property Core&#xff0c;知識產權核&#xff09;是預先設計好的、可重用的電路模塊&#xff0c;用于實…

PCL 點云OBB包圍盒(二)

文章目錄 一、簡介二、實現步驟二、實現代碼三、實現效果參考資料一、簡介 包圍盒是一種求解離散點集最優包圍空間的算法,基本思想是用體積稍大且特性簡單的幾何體(稱為包圍盒)來近似地代替復雜的幾何對象。(來源于百度)常用的求解包圍盒的算法主要有AABB和OOB算法,但AAB…

第九節:哈希表(初階)

1. 哈希表的核心概念 哈希表&#xff08;Hash Table&#xff09;是一種通過哈希函數將鍵&#xff08;Key&#xff09;映射到存儲桶&#xff08;Bucket&#xff09;的數據結構&#xff0c;核心目標是實現快速查找、插入和刪除操作。其核心特點如下&#xff1a; ?哈希函數&…

【Visio使用教程】

Visio使用教程 1. Visio 的基本介紹1.1 Visio 是什么&#xff1f;核心特點&#xff1a; 1.2 主要功能與應用場景典型用途&#xff1a;行業應用&#xff1a; 1.3 版本與兼容性1.4 Visio下載1.5 安裝 2. Visio 的界面與基礎操作2.1 界面布局詳解2.2 創建新文檔與模板選擇2.3 形狀…

緩存使用的具體場景有哪些?緩存的一致性問題如何解決?緩存使用常見問題有哪些?

緩存使用場景、一致性及常見問題解析 一、緩存的核心使用場景 1. 高頻讀、低頻寫場景 典型場景&#xff1a;商品詳情頁、新聞資訊、用戶基本信息。特點&#xff1a;數據更新頻率低&#xff0c;但訪問量極高。策略&#xff1a; Cache-Aside&#xff08;旁路緩存&#xff09;&a…