xiaozhu2007
全部博文(103)
2008年(77)
2007年(26)
xiaobo20
cynthia
浪花小雨
GLM89122
Mr_Ran
sun2011y
feel_hyq
tinnal
竟成007
lovebing
分类: C/C++
2008-03-17 18:48:02
#include <stdio.h> #include <stdlib.h> char array[101][51]; int sort[100]; int main(int argc, char **argv) { int n, m, i, j, k, key, pos; int res[100]; scanf("%d %d", &n, &m); getchar(); for(i = 0; i < m; i++){ for(j = 0; j < n; j++){ scanf("%c", &array[i][j]); } getchar(); } for(i = 0; i < m; i++){ for(j = 0; j < n; j++){ for(k = j; k < n; k++){ if(array[i][j] > array[i][k]){ sort[i]++; } } } res[i] = i; }//算逆序数 for(j = 1; j < m; j++){ i = j-1; key = sort[j]; pos = res[j]; while((key < sort[i]) && (i >= 0)){ sort[i+1] = sort[i]; res[i+1] = res[i]; i--; } sort[i+1] = key; res[i+1] = pos; }//插入排序 for(i = 0; i < m; i++){ printf("%s\n", array[res[i]]); } exit(0); }
上一篇:prob 2368 DFS算法
下一篇:对prob 1007的算法改进!
登录 注册