prometheus800

Непарно парно сортирање АПС

Dec 12th, 2020
1,191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.47 KB | None | 0 0
  1. //Непарно парно сортирање Problem 1 (3 / 13)
  2. //        Дадена е низа со N природни броеви.
  3. //        Треба да се сортира низата така што во првиот дел од низата ќе бидат подредени непарните броеви од неа во растечки редослед,
  4. //        а во вториот дел парните броеви во опаѓачки редослед. Во првиот ред од влезот даден е бројот на елементи во низата N,
  5. //        а во вториот ред се дадени броевите. На излез треба да се испечати сортираната низа.
  6. //
  7. //        Име на класата: OddEvenSort
  8. //
  9. //        Sample input
  10. //        8
  11. //        6 10 13 5 8 17 2 5
  12. //        Sample output
  13. //        5 5 13 17 10 8 6 2
  14.  
  15.  
  16. import java.io.BufferedReader;
  17. import java.io.IOException;
  18. import java.io.InputStreamReader;
  19.  
  20. public class OddEvenSort {
  21.  
  22.     static void oddEvenSort(int a[], int n)
  23.     {
  24.         // Vasiot kod tuka
  25.         for (int i = 0; i < n - 1; i++) {
  26.             for (int j = 0; j < n - i - 1; j++) {
  27.                 if(a[j] % 2 == 0){
  28.                     int tmp = a[j];
  29.                     a[j] = a[j+1];
  30.                     a[j+1] = tmp;
  31.                 }
  32.                 if(a[j] % 2 == 1 && a[j+1] % 2 == 1){
  33.                     if(a[j] > a[j+1]){
  34.                         int tmp = a[j];
  35.                         a[j] = a[j+1];
  36.                         a[j+1] = tmp;
  37.                     }
  38.                 }
  39.                 else if(a[j] % 2 == 0 && a[j+1] % 2 == 0){
  40.                     if(a[j] < a[j+1]){
  41.                         int tmp = a[j];
  42.                         a[j] = a[j+1];
  43.                         a[j+1] = tmp;
  44.                     }
  45.                 }
  46.             }
  47.         }
  48.     }
  49.  
  50.  
  51.     public static void main(String[] args) throws IOException{
  52.         int i;
  53.         BufferedReader stdin = new BufferedReader( new InputStreamReader(System.in));
  54.         String s = stdin.readLine();
  55.         int n = Integer.parseInt(s);
  56.  
  57.         s = stdin.readLine();
  58.         String [] pom = s.split(" ");
  59.         int [] a = new int[n];
  60.         for(i=0;i<n;i++)
  61.             a[i]=Integer.parseInt(pom[i]);
  62.         oddEvenSort(a,n);
  63.         for(i=0;i<n-1;i++)
  64.             System.out.print(a[i]+" ");
  65.         System.out.print(a[i]);
  66.     }
  67. }
Add Comment
Please, Sign In to add comment