从c++魔板算法开始研究加密算法的基础
在成功地发明了魔方之后,鲁比克先生发明了它的二维版本,称作魔板。
这是一张有8个大小相同的格子的魔板:
正在上传…重新上传取消
我们知道魔板的每一个方格都有一种颜色。这8种颜色用前8个正整数来表示。可以用颜色的序列来表示一种魔板状态,规定从魔板的左上角开始,沿顺时针方向依次取出整数,构成一个颜色序列。
对于上图的魔板状态,我们用序列(1,2,3,4,5,6,7,8)来表示。这是基本状态。
这里提供三种基本操作,分别用大写字母“A”,“B”,“C”来表示(可以通过这些操作改变魔板的状态):
“A”:交换上下两行;
“B”:将最右边的一列插入最左边;
“C”:魔板中央四格作顺时针旋转。
下面是对基本状态进行操作的示范:
A:
8 7 6 5
1 2 3 4
B:
4 1 2 3
5 8 7 6
C:
1 7 2 4
8 6 3 5
对于每种可能的状态,这三种基本操作都可以使用。
你要编程计算用最少的基本操作完成基本状态到目标状态的转换,输出基本操作序列。
【输入格式】
只有一行,包括8个整数,用空格分开(这些整数在范围 1——8 之间),表示目标状态。
【输出格式】
第一行包括一个整数,表示最短操作序列的长度。
第二行在字典序中最早出现的操作序列,用字符串表示,除最后一行外,每行输出60个字符。
【样例输入】
2 6 8 4 5 7 3 1
【样例输出】
7
BCABCCB
部分代码
void A(string x) {
string y=x;
for(int i=0; i<4; i++) swap(x[i],x[7-i]);
if(mp.count(x)==0) q.push(x),mp[x]=mp[y]+'A';
}
比较简单,但是这代表了一种加密算法,这里的操卓是可逆的,一共有3钟,但是假如10钟呢,20呢,
每种都简单,但是组合后你不知道这10钟里的每一种用了几次,根据对应的种类和次数可实现可逆加密,
-
迅雷Thunder9.5补充稳定版
迅雷9稳定版是网友【myAa1】根据迅雷9进行改造的p2p下载器,因此该软件拥有原生迅雷的所有功能,同时该软件还进行了精简,可以为用户们提供... 957 0 25-04-13 -
bigjpg - AI人工智能图片放大
图片放大原理是什么?使用最新人工智能深度学习技术——深度卷积神经网络。它会将噪点和锯齿的部分进行补充,实现图片的无损放大。查看示例... 1225 0 24-11-14 -
jQuery点击生成二维码QRCode复制链接保存到本地
jquery-qrcode.js 生成二维码并支持下载到本地jquery-qrcode.js 引入1、jQuery生成layer弹出框代码<div id="qrcode" class="qrcode"></di... 748 0 24-03-06 -
EyouCms 易优内容管理系统
EyouCms是什么,EyouCms是一个自由和开放源码的内容管理系统,它是一个可以独立使用的内容发布系统(CMS)。以模板多、易优化、开源而闻名... 378 0 21-07-02 -
闲鱼的链接不要点
本人使用多年咸鱼,我算咸鱼经常消费的人群第一次遇到这种诈骗,购买京东plus会员,商家发来一个链接,结果点完被盗刷了两千块,花呗给我刷... 1295 0 24-11-18 -
出差制度,出差管理表 - 企业管理表格
员工出差申请单.doc业务员出差申请单.doc出国申请表.doc出差通知单.doc预支差旅费申请单.doc业务员出差报告表.doc员工出差报告表.doc差旅费... 1118 0 24-07-31 -
初高中教材电子版
初中体育学科教材.pdf初中信息技术教材-.pdf初中化学学科教材.pdf初中历史学科教材.pdf初中思想品德教材-.pdf初中数学学科教材.pdf初中物理... 981 0 24-08-19 -
魔法抢购助手_Ver_6_2_全能抢购_多平台自动抢购_会员解锁版_
魔法抢购助手app是一款专业给力的免费抢东西软件,魔法抢购助手app拥有强大的定时秒抢功能,通过魔法抢购助手软件抢秒杀产品更放心。是一款... 1900 0 24-06-01
发表我的评论
- 这篇文章还没有收到评论,赶紧来抢沙发吧~