2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J.Minimum Distance in a Star Graph
来源:互联网 发布:can数据帧格式 编辑:程序博客网 时间:2024/06/05 02:48
题目链接:Minimum Distance in a Star Graph
思路:模拟,因为只能把后面的和第一个交换,所以当第一个不在其应在的位置时,把它放到应在的位置;当第一个已经在它应在的位置时,去后面一个不在正确位置的点和第一个交换……直到字符串完全匹配。
#include <iostream>#include <cstdio>#include <fstream>#include <algorithm>#include <cmath>#include <deque>#include <vector>#include <queue>#include <string>#include <cstring>#include <map>#include <stack>#include <set>#define Max(a,b) a>b?a:b#define Min(a,b) a>b?b:a#define mem(a,b) memset(a,b,sizeof(a))using namespace std;typedef long long ll;int dir[4][2]= {{1,0},{-1,0},{0,1},{0,-1}};const double eps = 1e-6;const double Pi = acos(-1.0);const int INF=0x3f3f3f3f;int before[10];int after[10];map<int,int> mp;map<int,int> mp2;int n;bool check(){ for(int i = 1; i <= n; i++){ if(before[i] != after[i]) return true; } return false;}int main(){ int a,b; while(~scanf("%d",&n)){ int countt = 5; while(countt--){ mem(before,0); mem(after,0); scanf("%d%d",&a,&b); mp.clear(); mp2.clear(); for(int i = n; i >= 1; i--){ before[i] = a % 10; mp[a%10] = i; a /= 10; after[i] = b % 10; mp2[b%10] = i; b /= 10; } int ans = 0; int tmp; int ind; while(check()){ for(int i = 1; i <= n; i++){ if(before[i] != after[i]){ ans++; if(i == 1) ind = mp2[before[1]]; else ind = i; tmp = before[1]; mp[before[1]] = ind; before[1] = before[ind]; mp[before[ind]] = 1; before[ind] = tmp; break; } } } printf("%d\n",ans); } } return 0;}
阅读全文
0 0
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛(J.Minimum Distance in a Star Graph)
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛- J. Minimum Distance in a Star Graph
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J. Minimum Distance in a Star Graph
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J Minimum Distance in a Star Graph 广度优先搜索
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J.Minimum Distance in a Star Graph
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 Minimum Distance in a Star Graph
- Minimum Distance in a Star Graph BFS/康托展开 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J. Minimum Distance in a Star Graph(bfs+状态保存)
- 2017 ACM-ICPC南宁网络赛: J. Minimum Distance in a Star Graph(BFS)
- 2017 icpc 南宁赛区 J. Minimum Distance in a Star Graph(bfs)
- 2017南宁网络赛J.Minimum Distance in a Star Graph(bfs求最短路)
- 计蒜客 Minimum Distance in a Star Graph 2017icpc南宁赛区 字符串bfs
- Minimum Distance in a Star Graph(南宁网络赛)
- [计蒜客16959] Colored Graph [2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 J]
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 A. Weather Patterns(阅读题)
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 A. Weather Patterns
- [spark] RDD缓存源码解析
- C# 与 Java 通过Base64传送图片
- Anaconda3 5.0.0中配置Python 3.6 + TensorFlow环境
- 如何获取系统架构
- 逻辑回归算法背后的数学
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 J.Minimum Distance in a Star Graph
- 《Java核心技术》第10版读书笔记之Chap5(3)——Object类及其equals、hashCode与toString方法
- 保研路
- C++ MFC / VS2013 之七 (对话框:为控件添加消息处理函数)
- 【图像融合】拉普拉斯金字塔融合
- linux基础命令4
- mine (dp)
- 史上最详细的XGBoost实战
- 10.3总结_关于测验