299 - Train Swapping - Uva online
来源:互联网 发布:c语言简单小程序 编辑:程序博客网 时间:2024/06/10 02:33
一个小程序,却不乏学习之处,通过这么一个小小的程序,让我注意到,所开数组的大小是有限制的,如果开得过大,不仅有编译出错的可能,还会造成内存的大量浪费,切记!
题目来源:uva.onlinejudge.org/index.php
#
include < iostream >
#include < cstring >
using namespace std;
const int MAX = 3010;
const int MIN = 80;
int main() {
int N, L, i, j, k, l, a;
int Train[MAX][MIN];
//记录每种情况的编号
int Swapnum[MAX];
//保存移动的次数
memset(Swapnum, 0, MAX);
cin >> N;
for
(i = 0; i < N; i++) {
cin >> L;
for
(j = 0; j < L; j++)
cin >> Train[i][j];
for
(j = 0; j < L; j++) {
k = j;
for
(l = j + 1; l < L; l++)
if
(Train[i][k] > Train[i][l])
k = l;
Swapnum[i] += k - j;
//此趟移动的次数
if
(k != j) {
int t = Train[i][k];
for
(a = k; a > j; a--)
//将数据重新排序
Train[i][a] = Train[i][a - 1];
Train[i][j] = t;
}
}
}
for
(i = 0; i < N; i++)
cout <<
"Optimal train swapping takes "
<< Swapnum[i] <<
" swaps."
<< endl;
return
0;
}
- 299 - Train Swapping - Uva online
- UVa 299 Train Swapping
- Uva 299 Train Swapping
- uva 299 Train Swapping
- UVA 299 - Train Swapping
- UVA 299-Train Swapping
- UVa 299 - Train Swapping
- uva-299 - Train Swapping
- UVa 299 - Train Swapping
- UVa 299 - Train Swapping
- UVa 299 - Train Swapping
- UVA 299 Train Swapping
- uva 299 - Train Swapping
- UVa - 299 - Train Swapping
- uva 299 Train Swapping
- uva - 299 - Train Swapping
- UVa 299 - Train Swapping
- UVa 299 - Train Swapping
- 快考试了
- 目的
- 呵呵
- .NET系列 之 借鉴的两种方式和不同结果
- 《The Elements of Programming Style 》老人言
- 299 - Train Swapping - Uva online
- JDK动态代理
- 测试
- 新来的,大家帮下忙哦
- 第4讲 文本编辑器Vim/Vi 视频下载地址
- 数据结构图的综合实验代码
- 只需简单几步,使eclipse和java-docs-api中文文档无缝连接
- 心情不好
- jQuery弹出层插件大全