fork download
  1. import java.util.*;
  2. class M{
  3. static String c(String... a){
  4. Map s = new HashMap();
  5. int j,
  6. i = 1,
  7. l = a[0].length();
  8. for(; i < a.length; i++){
  9. if((j = a[0].indexOf(a[i])) > -1){
  10. s.put(j, s.get(j) != null
  11. ? s.get(j) + " " + a[i]
  12. : a[i]);
  13. }
  14. }
  15. a[0] = "";
  16. for(j = 0; j < l; j++){
  17. a[0] += s.get(j) != null
  18. ? s.get(j) + " "
  19. : "";
  20. }
  21. return a[0];
  22. }
  23.  
  24. public static void main(String[] a){
  25. System.out.println(c("dogcatfrog", "cat", "frog", "dog"));
  26. System.out.println(c("xxcatfixsxhingonxgrapexxxfishingcxat", "cat", "grape", "catfish", "fishing"));
  27. System.out.println(
  28. c("dababbabadbaccbcbaaacdacdbdd ", "aa", "bb", "cc", "dd", "ba", "ba", "ba", "ab", "ac", "da", "db", "dc"));
  29. System.out.println(c("flea", "antelope"));
  30. }
  31. }
Success #stdin #stdout 0.05s 711168KB
stdin
Standard input is empty
stdout
dog cat frog 
cat grape fishing 
da ab ba ba ba bb db ac cc aa dd