Advertisement
Guest User

Untitled

a guest
Feb 7th, 2016
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.72 KB | None | 0 0
  1. public class Ex2
  2. {
  3.     public static void main(String [] args)
  4.     {
  5.         int[] a = {-2, 3, 5, 7, 12};
  6.  
  7.         System.out.println("sum2(a, 17) " + sum2(a, 17));
  8.         System.out.println("sum2(a, 16) " + sum2(a, 16));
  9.  
  10.         System.out.println("sum3(a, 17) " + sum3(a, 17));
  11.         System.out.println("sum3(a, 16) " + sum3(a, 16));
  12.     }
  13.  
  14.     public static boolean sum2 (int[] arr, int num)
  15.     {
  16.         int start = 0;
  17.         int end = arr.length-1;
  18.         while (start < end)
  19.         {
  20.             if (arr[end]+arr[start] > num)
  21.             {
  22.                 end--;
  23.             }
  24.             else if (arr[end]+arr[start] < num)
  25.             {
  26.                 start++;
  27.             }
  28.             else
  29.             {
  30.                 return true;
  31.             }
  32.         }
  33.  
  34.         return false;
  35.     }
  36.  
  37.     public static boolean sum3 (int[] arr, int num)
  38.     {
  39.         for (int i=0; i<arr.length; i++)
  40.         {
  41.             int sum = num-arr[i];
  42.  
  43.             int start = 0;
  44.             int end = arr.length-1;
  45.             while (start < end)
  46.             {
  47.                 if (end == i)
  48.                 {
  49.                     end--;
  50.                     continue;
  51.                 }
  52.                 if (start == i)
  53.                 {
  54.                     start++;
  55.                     continue;
  56.                 }
  57.                 else if (arr[end]+arr[start] > sum)
  58.                 {
  59.                     end--;
  60.                 }
  61.                 else if (arr[end]+arr[start] < sum)
  62.                 {
  63.                     start++;
  64.                 }
  65.                 else
  66.                 {
  67.                     return true;
  68.                 }
  69.             }
  70.         }
  71.  
  72.         return false;
  73.     }
  74.  
  75.  
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement