package Poj1007; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Scanner; public class Cici1007 { public static void main(String[] args) throws Exception { // TODO Auto-generated method stub { char[] c = null; int i=0,j=0; String str = new String(); ArrayList dna = new ArrayList(); ArrayList dnameasure = new ArrayList(); Scanner cin = new Scanner(System.in); int length = cin.nextInt(),num = cin.nextInt(); c = new char[length]; for(i=0;i<num;i++){ str = cin.next(); dna.add(str); for(j=0;j<str.length();j++){ c[j] = str.charAt(j); } dnameasure.add(measure(c)); } //sort for two array Integer temp; for (i = dna.size() - 1; i > 0 ; --i){ for (j = 0; j < i; ++j) { if (dnameasure.get(j+1) < dnameasure.get(j)) { swap(dnameasure,j,j+1); swap(dna,j,j+1); } } } for(i=0;i<num;i++){ System.out.println(dna.get(i)); } } } static void swap (List list, int a, int b){ Object objA = list.get(a); list.set(a, list.get(b)); list.set(b, objA); } public static int measure(char[] a){ int sortnum = 0; char temp = 0; for (int i = a.length - 1; i > 0; --i) { for (int j = 0; j < i; ++j) { if (a[j + 1] < a[j]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; sortnum++; } } } return sortnum; } }