Advertisement
Guest User

Untitled

a guest
May 25th, 2015
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.32 KB | None | 0 0
  1. import java.lang.*;
  2.  
  3. class MyTable {
  4.     // Создаём таблицу типа "массив массивов символов"
  5.     private String str_1 = "132czxv456";
  6.     private String str_2 = "acdgz";
  7.     private String str_3 = "123456za";
  8.     private String str_4 = "abcdefg";
  9.     private String str_5 = "aBcDeFgZ";
  10.    
  11.     private char[] row_1 = str_1.toCharArray();
  12.     private char[] row_2 = str_2.toCharArray();
  13.     private char[] row_3 = str_3.toCharArray();
  14.     private char[] row_4 = str_4.toCharArray();
  15.     private char[] row_5 = str_5.toCharArray();
  16.    
  17.     private char[][] myTable = {row_1, row_2, row_3, row_4, row_5};
  18.        
  19.     public char[][] getTable() {
  20.         return myTable;
  21.     }
  22. }
  23.    
  24. public class Test {
  25.     public static void main (String[] args) {
  26.         MyTable test_t = new MyTable();
  27.         String longestString = "No strings for ya";
  28.         int longestCount = 0;
  29.         for (char[] row : test_t.getTable()) {
  30.             // Совершаем обход массивов в массиве, подсчитывая символы, расположенные в удовлетворяющем условия порядке
  31.             int prev = 0;
  32.             int next = 0;
  33.             boolean isCorrect = true;
  34.             for (char ch : row) {
  35.                 ch = Character.toLowerCase(ch); // Приведение к нижнему регистру. Можно закомментить, тогда у "А" будет больший индекс, чем у "z"
  36.                 prev = next;
  37.                 next = (int)(ch);
  38.                 if (next <= prev) {
  39.                     isCorrect = false;
  40.                     break;
  41.                 }
  42.             }
  43.             if (isCorrect && (longestCount < row.length)) {
  44.                 // Если до конца цикла isCorrect остается true, указываем "самую длинную строку" и кол-во её символов, если до этого не было указано строки с большим кол-вом символов
  45.                 longestString = new String(row);
  46.                 longestCount = row.length;
  47.             }
  48.             System.out.println(new String(row) + " isCorrect: " + isCorrect);
  49.             System.out.println("Longest string now is: " + longestString + "\n");
  50.         }
  51.         // Выводим результат
  52.         if (!longestString.equals("No strings for ya")) {
  53.             System.out.println("\nThe longest string is '" + longestString + "' with " + longestCount + " characters.");
  54.         } else {
  55.             System.out.println("\nSorry, buddy, no strings for ya");
  56.         }
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement