蜘蛛牌是windows xp操作系统自带的一款纸牌游戏,游戏规则是这样的:只能将牌拖到比她大一的牌上面(A最小,K最大),如果拖动的牌上有按顺序排好的牌时,那么这些牌也跟着一起移动,游戏的目的是将所有的牌按同一花色从小到大排好,为了简单起见,我们的游戏只有同一花色的10张牌,从A到10,且随机的在一行上展开,编号从1到10,把第i号上的牌移到第j号牌上,移动距离为abs(i-j),现在你要做的是求出完成游戏的最小移动距离。

Input

第一个输入数据是T,表示数据的组数。
每组数据有一行,10个输入数据,数据的范围是[1,10],分别表示A到10,我们保证每组数据都是合法的。

Output

对应每组数据输出最小移动距离。

Sample Input

1
1 2 3 4 5 6 7 8 9 10

Sample Output

9
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#include<queue>
#include<stack>
#include<set>
#include<map>
#include<vector>
#include<cmath>
const int maxn=1e5+5;
typedef long long ll;
using namespace std;
int a[105],vis[105];
int ans;
void dfs(int num,int sum){if(num==9){//只要安排好9张牌的位置,剩下的那一个自动就好了 if(sum<ans)ans=sum;//更新 return ;}for(int i=1;i<10;i++){//尝试所以可能 if(!vis[i]){//还没有试过 vis[i]=1;for(int j=i+1;j<=10;j++){//向下遍历 if(!vis[j]){dfs(num+1,sum+abs(a[i]-a[j]));break;                  }}vis[i]=0;}}
}
int main(){int t,x;scanf("%d",&t);//t组数据 while(t--){ans=99999;//更新 memset(vis,0,sizeof(vis));for(int i=1;i<=10;i++){//读入数据 scanf("%d",&x);a[x]=i;//记录位置 }  dfs(0,0);printf("%d\n",ans);}return 0;
}

HDU—1584 蜘蛛牌 (深搜)相关推荐

  1. hdu 1584蜘蛛牌(DFS)

    蜘蛛牌 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  2. HDU - 1584 蜘蛛牌

    蜘蛛牌是windows xp操作系统自带的一款纸牌游戏,游戏规则是这样的:只能将牌拖到比她大一的牌上面(A最小,K最大),如果拖动的牌上有按顺序排好的牌时,那么这些牌也跟着一起移动,游戏的目的是将所有 ...

  3. HDU 1584 蜘蛛牌(DFS)

    蜘蛛牌 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  4. hdu 1584 蜘蛛牌(bfs+set)

    蜘蛛牌 Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  5. HDU - 1584 蜘蛛牌 【DFS】

    Description 蜘蛛牌是windows xp操作系统自带的一款纸牌游戏,游戏规则是这样的:只能将牌拖到比她大一的牌上面(A最小,K最大),如果拖动的牌上有按顺序排好的牌时,那么这些牌也跟着一起 ...

  6. HDU - 1584 蜘蛛牌(dfs+最优性剪枝)

    题目链接:点击查看 题目大意:给出10张牌,随机分布在1~10十个不同的位置,要求模拟蜘蛛纸牌的游戏规则,问移动的最短距离之和是多少 题目分析:我们可以直接dfs搜索,但需要想清楚该怎么搜索,这个题目 ...

  7. (step4.3.9)hdu 1584(蜘蛛牌——DFS)

    题目大意:本体是中文题,可以直接在OJ上看 /** 1584_2.cpp** Created on: 2013年8月22日* Author: Administrator*/#include <i ...

  8. hdu 3812 Sea Sky 深搜+剪枝

    题目意思: 从sea 找一条道sky 的最长路 题解: 先进行一系列的预处理 1.将所有不重复的字符串先保留下来,然后从小到大排序,这样深搜的时候最先弄出来的答案就是最小的 字母序. 2. 进行深度优 ...

  9. 蜘蛛牌 HDU - 1584(搜索——达到先让某些段先结合,达最优解)

    题意: 一排杂乱的牌,牌间距为1,每次移动只能将小的牌,移动到较大牌上,最终使得牌从小到大排好在一堆.问移动的最小距离. 题目: 蜘蛛牌是windows xp操作系统自带的一款纸牌游戏,游戏规则是这样 ...

最新文章

  1. redisTemplate分布式锁演变、redission分布式锁实现!
  2. Subversion存储库中“分支”,“标记”和“主干”的含义是什么?
  3. Hyperledger Fabric 核心模块(2)configtxgen工具
  4. java lazy loading_java – Spring,@Transactional和Hibernate Lazy Loading
  5. 戏说春秋 第三关 窃符救赵 图片隐写
  6. 修改 wordpress 后台管理员登录地址
  7. xp系统目前禁用索引服务器,WinXP系统中可以被禁用的服务对照表
  8. 遍历字典_十三、Python字典三种遍历方法
  9. 闪客工具:好玩的GifCam录制gif软件
  10. html datetime控件 到时分秒,日期控件:datepicker(bootstrap)支持时分秒
  11. VMX进程已提前退出
  12. CCF201912-3 化学方程式*
  13. 数据库——mvcc简介
  14. win10安全模式都进不去_win10开机进不了系统处理
  15. Vulnhub靶机:HA_ NARAK
  16. AI如何实现安全生产智能监控
  17. 生活与管理中的18条实用定律
  18. 华为这么牛?21级程序员月薪看哭众人!网友直呼:我们不一样
  19. office tab enterprise是什么:Office Tab Enterprise是超级微软office多标签插件---高效办公必备神器
  20. win10系统更新到指定版本

热门文章

  1. IPsec ESP AES-GCM
  2. RabbitMQ详解,用心看完这一篇就够了【重点】
  3. KMP快速计算next与nextval
  4. Alibaba easyExcel对Excel操作之复杂标题处理
  5. ASF学习笔记 (转贴)
  6. 百望云实力入选“2023中国金融科技百强企业”
  7. [LeetCode解题报告] 365. 水壶问题
  8. 简单的去水印小程序源码~无需授权版
  9. Charles手机无法下载证书
  10. Word文档最后一页页码与总页码不一致怎么解决?