STL的应用,基本就是模拟题。

 /* 1410 */
#include <iostream>
#include <string>
#include <algorithm>
#include <map>
#include <cstdio>
#include <cstring>
using namespace std; #define ONLINE_JUDGE
#define MAXN 125
#define INF 0xfffffff int nn;
int dis[MAXN][MAXN];
string buf[MAXN];
bool visit[];
map<string, int> tb;
int a[MAXN]; int myabs(int x) {
return x< ? -x:x;
} void init() {
string s = "ABCDE";
nn = ;
int i, j, k, p;
int sum, tmp; do {
buf[nn] = s;
tb[s] = nn++;
} while (next_permutation(s.begin(), s.end())); for (i=; i<nn; ++i) {
dis[i][i] = ;
for (j=i+; j<nn; ++j) {
sum = ;
memset(visit, false, sizeof(visit));
for (k=; k<; ++k) {
for (p=; p<; ++p) {
if (buf[j][p] == buf[i][k])
break;
else if (!visit[buf[j][p]-'A'])
++sum;
}
visit[buf[i][k]-'A'] = true;
}
dis[i][j] = dis[j][i] = sum;
}
}
} int main() {
int n;
int i, j, k, tmp;
int v, mmin, sum;
string s; ios::sync_with_stdio(false); #ifndef ONLINE_JUDGE
freopen("data.in", "r", stdin);
freopen("data.out", "w", stdout);
#endif init();
while (cin>>n && n) {
for (i=; i<n; ++i) {
cin >>s;
a[i] = tb[s];
}
mmin = INF;
for (i=; i<nn; ++i) {
sum = ;
for (j=; j<n; ++j)
sum += dis[i][a[j]];
if (sum < mmin) {
v = i;
mmin = sum;
}
}
printf("%s is the median ranking with value %d.\n", buf[v].c_str(), mmin);
} return ;
}

最新文章

  1. SQL Server ErrorLog
  2. 黑马程序员_ C语言基础(二)
  3. Android Intent (可通过URL启动 Activity)
  4. java CyclicBarrier
  5. 构建maven项目3
  6. mfc Clistctr 单元格嵌入图片(bmp)
  7. Android SDK离线安装方法详解(加速安装) 转
  8. 练习PYTHON之EVENTLET
  9. 使用mysql作为hive的元数据库
  10. mysql配置文件my.cnf解析转载
  11. 谈谈自己对于Auth2.0的见解
  12. jQuery UI 之 Bootstrap 快速入门
  13. grunt 上手
  14. 《Java从入门到放弃》JavaSE入门篇:异常
  15. vue2.0 配置build项目打包目录、资源文件(assets\static)打包目录
  16. TensorFlow-相关 API(学习笔记 )
  17. android adb shell and monkey 学习记录
  18. 自动化服务部署(二):Linux下安装jenkins
  19. count列表中字符出现的次数
  20. mysql---select的五种子句学习(where、group by、having、order by、limit)

热门文章

  1. 命令行修复MBR分区
  2. 基本RC积分电路及原理分析
  3. Codeforces 437B The Child and Set
  4. Java模块化概念解惑与现状总结
  5. JavaScript--execCommand指令集
  6. Gson解析json数据(转)
  7. MWEB+七牛 上传图片
  8. 格雷码(Gray Code)转二进制码(Binary Code)
  9. 基于bootstrap的轮播广告页,带图片和文字
  10. 写代码要注意细节,无谓的找前台bug