Problem Statement
- The elements of the sequence a should be distinct.
- Each a[i] should be an integer greater than 1.
- For each i, the value a[i]^b[i] (that is, a[i] to the power b[i]) should be divisible by p[i], where p[i] is the product of all other elements of a. (I.e. p[i] = a[0]*a[1]*...*a[i-1]*a[i+1]*...*a[n-1].)
Definition
- Class:
- DivisibleSetDiv1
- Method:
- isPossible
- Parameters:
- int[]
- Returns:
- String
- Method signature:
- String isPossible(int[] b)
- (be sure your method is public)
Constraints
- b will contain between 2 and 50 elements, inclusive.
- Each element in b will be between 1 and 10, inclusive.
Examples
{2,1}
Returns: "Possible"
Here, we have the following requirements: The values a[0] and a[1] should be distinct positive integers, both greater than 1. The value a[0]^2 should be divisible by a[1]. The value a[1]^1 should be divisible by a[0]. One sequence with the above properties is the sequence a = {2, 4}.
{1,1}
Returns: "Impossible"
In this test case the requirements imply that a[0] must be divisible by a[1] and vice versa. This is possible only if a[0] = a[1]. However, the elements of a must be distinct, so there is no valid sequence.
{7, 7, 7}
Returns: "Possible"
For example, a = {12, 54, 18}.
{6,7,5,2}
Returns: "Possible"
{1,7,10,7,8}
Returns: "Possible"
{3,3,6,10}
Returns: "Possible"
{1,4,3}
Returns: "Possible"
{4,10,3,7,2}
Returns: "Possible"
{8,1,2}
Returns: "Possible"
{3,1,3}
Returns: "Impossible"
{5,8,2,10,8,7}
Returns: "Possible"
{6,8,5,9,5,4,8}
Returns: "Possible"
{9,10,10,8,7,9,8,10,8}
Returns: "Possible"
{4,1,3}
Returns: "Possible"
{5,3,8,7,9,8,7}
Returns: "Possible"
{2,7,3,8,7}
Returns: "Possible"
{2,4,7,10,3}
Returns: "Possible"
{6,7,2,10,9,4}
Returns: "Possible"
{5,9,8,4,7,9,5}
Returns: "Possible"
{7,1,8,8,9}
Returns: "Possible"
{7,1,3,10}
Returns: "Possible"
{7,10,9,1,5}
Returns: "Possible"
{7,7,1,4}
Returns: "Possible"
{9,7,10,9,2,3}
Returns: "Possible"
{5,1,10,7,9}
Returns: "Possible"
{8,1,7,9,8}
Returns: "Possible"
{10,8,8,8,1}
Returns: "Possible"
{6,4,9,1}
Returns: "Possible"
{2,7,6,6,3}
Returns: "Possible"
{7,1,8,9,7}
Returns: "Possible"
{10,3,8,5,8,7,6}
Returns: "Possible"
{10,7,3,7,2}
Returns: "Possible"
{1,3,9,8}
Returns: "Possible"
{9,9,9,9,9,9,9,9,9,9}
Returns: "Impossible"
{10,10,10,10,10,10,10,10,10,10,10}
Returns: "Impossible"
{10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10}
Returns: "Impossible"
{6,6,6,6,6,6,6}
Returns: "Impossible"
{8,8}
Returns: "Possible"
{7,3,5,1}
Returns: "Impossible"
{9,9,9,3,6,9}
Returns: "Possible"
{4,9,6,6,9,2,6,10}
Returns: "Impossible"
{9,5,7,2,9,4,4,5,1,6}
Returns: "Impossible"
{10,4,2,4,4,2,5,10,6,4,1,9}
Returns: "Impossible"
{1,3,7,2,8,8,9,3,5,9,6,10,9,8}
Returns: "Impossible"
{6,8,3,6,10,6,7,9,8,4,1,2,10,1,10,10}
Returns: "Impossible"
{7,7,6,7,6,9,1,3,3,5,7,7,6,6,8,9,4,4}
Returns: "Impossible"
{5,2,6,10,2,1,1,8,5,4,6,9,7,10,7,2,10,5,6,8}
Returns: "Impossible"
{8,3,2,5,1,10,3,1,5,8,8,8,9,6,10,6,9,8,1,7,4,10}
Returns: "Impossible"
{5,3,5,4,6,1,3,7,9,6,2,5,4,1,1,9,6,10,10,6,10,7,7,8}
Returns: "Impossible"
{2,9,9,3,4,4,1,9,4,10,2,8,8,3,5,8,10,9,5,4,5,9,8,1,5,9}
Returns: "Impossible"
{2,2,2,8,7,3,3,1,6,8,4,1,9,1,7,4,4,7,9,7,1,1,7,7,6,10,4,4}
Returns: "Impossible"
{8,6,4,9,7,4,1,5,3,2,8,3,8,7,4,5,5,9,6,7,7,3,9,7,1,1,2,4,4,5}
Returns: "Impossible"
{6,6,7,4,9,1,8,9,2,10,10,2,6,3,3,8,7,9,7,3,2,5,3,6,8,2,3,4,2,1,1,2}
Returns: "Impossible"
{7,3,6,6,3,1,1,1,6,3,6,3,4,1,4,2,2,6,7,4,2,1,8,7,1,4,7,4,4,5,8,2,8,1}
Returns: "Impossible"
{5,7,3,1,1,9,5,2,6,3,10,10,10,6,2,9,4,6,7,9,3,2,6,8,1,1,7,6,9,9,4,5,5,6,10,2}
Returns: "Impossible"
{3,8,9,2,5,5,2,1,5,1,10,9,2,3,6,5,7,2,7,4,2,2,4,3,4,3,9,7,6,5,6,7,4,6,10,3,5,1}
Returns: "Impossible"
{9,5,3,2,2,7,2,7,7,7,4,7,2,10,1,1,2,3,4,9,3,2,5,4,7,5,9,2,2,8,1,9,3,10,5,3,6,6,1,8}
Returns: "Impossible"
{4,1,1,7,6,1,2,8,4,5,5,9,5,4,9,3,1,2,5,10,7,10,10,7,8,1,4,8,2,4,9,10,9,3,5,6,7,2,7,3,9,4}
Returns: "Impossible"
{7,9,6,1,9,2,9,3,7,2,1,5,4,3,9,1,5,4,7,2,2,3,8,7,10,8,10,2,1,5,5,3,9,3,3,7,7,6,10,1,10,10,10,9}
Returns: "Impossible"
{7,9,4,9,4,10,10,9,6,6,6,2,6,10,3,6,2,8,7,3,1,7,3,9,6,10,9,8,2,2,4,3,10,8,1,1,5,5,4,8,5,6,10,8,6,8}
Returns: "Impossible"
{3,9,5,1,6,9,8,8,6,6,8,6,3,3,4,6,8,1,1,2,4,3,3,3,2,1,7,1,3,8,9,9,7,8,6,4,7,9,9,6,2,7,1,4,7,8,9,2}
Returns: "Impossible"
{2,7,9,8,7,4,4,7,6,8,4,6,6,1,8,1,3,7,6,2,4,4,1,3,2,10,9,3,1,7,9,3,4,2,3,5,2,2,6,9,2,5,5,7,6,8,8,10,9,6}
Returns: "Impossible"
{4,4,4,4,9,9}
Returns: "Impossible"
{1,2,5}
Returns: "Possible"
{1,1}
Returns: "Impossible"
{1,2,5}
Returns: "Possible"
{1,3,3}
Returns: "Impossible"
{1,3,7,7}
Returns: "Impossible"
{1,4,4,9}
Returns: "Impossible"
{1,4,8,9,10}
Returns: "Impossible"
{1,4,9,9,9}
Returns: "Impossible"
{1,5,5,5}
Returns: "Impossible"
{1,5,6,9,10}
Returns: "Impossible"
{1,5,7,8,9}
Returns: "Impossible"
{1,5,8,8,8}
Returns: "Impossible"
{1,6,6,7,10}
Returns: "Impossible"
{1,6,6,8,9}
Returns: "Possible"
{1,7,7,7,7}
Returns: "Impossible"
{2,2,2}
Returns: "Impossible"
{2,2,5,5}
Returns: "Impossible"
{2,2,6,9,10}
Returns: "Impossible"
{2,2,7,8,9}
Returns: "Impossible"
{2,2,8,8,8}
Returns: "Impossible"
{2,3,3,5}
Returns: "Impossible"
{2,3,4,7,10}
Returns: "Possible"
{2,3,5,7,7}
Returns: "Impossible"
{2,4,4,5,9}
Returns: "Impossible"
{2,4,4,6,7}
Returns: "Impossible"
{2,5,5,5,5}
Returns: "Impossible"
{3,3,3,3}
Returns: "Impossible"
{3,3,3,7,7}
Returns: "Impossible"
{3,3,4,4,9}
Returns: "Impossible"
{3,3,5,5,5}
Returns: "Impossible"
{4,4,4,4,4}
Returns: "Impossible"
{5, 10, 7, 4, 10 }
Returns: "Possible"
{1, 2, 5 }
Returns: "Possible"
{10, 10, 10, 10, 10, 10 }
Returns: "Possible"
{2, 3, 3, 4 }
Returns: "Impossible"
{5, 4, 3, 2 }
Returns: "Possible"
{2, 3, 4, 5, 6 }
Returns: "Impossible"
{2, 2 }
Returns: "Possible"
{1, 2, 3, 4, 5, 6, 7, 8, 9, 9, 9, 9, 9, 9 }
Returns: "Impossible"
{3, 3, 2, 1 }
Returns: "Impossible"
{1, 2, 3 }
Returns: "Impossible"
{2, 2, 2, 2 }
Returns: "Impossible"
{2, 3, 4 }
Returns: "Possible"
{1, 2, 4 }
Returns: "Impossible"
{2, 2, 2 }
Returns: "Impossible"
{2, 2, 2, 2, 2, 2, 2, 2, 2 }
Returns: "Impossible"
{7, 8, 9, 9, 9, 9, 10, 10, 10, 10 }
Returns: "Possible"
{2, 2, 2, 2, 2 }
Returns: "Impossible"
{1, 3, 4 }
Returns: "Possible"
{4, 4, 4 }
Returns: "Possible"
{2, 2, 3 }
Returns: "Possible"
{10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }
Returns: "Impossible"
{4, 2, 1 }
Returns: "Impossible"
{5, 5, 5, 5 }
Returns: "Possible"
{1, 2, 6 }
Returns: "Possible"
{3, 3, 3 }
Returns: "Possible"
{2, 3, 2 }
Returns: "Possible"
{10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }
Returns: "Impossible"
{3, 1, 3 }
Returns: "Impossible"
{3, 2, 1 }
Returns: "Impossible"
{1, 1, 10 }
Returns: "Impossible"
{2, 1, 3 }
Returns: "Impossible"
{1, 2, 2 }
Returns: "Impossible"
{2, 3, 4, 5, 6, 7, 8, 9, 10 }
Returns: "Impossible"
{3, 10, 10, 2, 8 }
Returns: "Possible"
{10, 10, 10, 10, 10 }
Returns: "Possible"
{10, 10 }
Returns: "Possible"
{6, 9, 9, 9, 9, 9, 10, 10, 10, 10 }
Returns: "Impossible"
{1, 10, 3, 10 }
Returns: "Possible"
{1, 4, 7 }
Returns: "Possible"
{7, 8, 10, 1 }
Returns: "Possible"
{1, 5, 8 }
Returns: "Possible"
{1, 3, 3 }
Returns: "Impossible"
{10, 10, 10, 10, 10, 10, 10, 10, 10 }
Returns: "Possible"
{7, 7, 7, 7 }
Returns: "Possible"
{2, 10, 10 }
Returns: "Possible"
{1, 2, 3, 4, 5, 6 }
Returns: "Impossible"
{10, 1, 1, 1 }
Returns: "Impossible"
{2, 10, 10, 10 }
Returns: "Possible"
{1, 1 }
Returns: "Impossible"
{3, 2, 2 }
Returns: "Possible"
{3, 4, 4, 5, 5 }
Returns: "Possible"
{2, 5, 5, 5 }
Returns: "Possible"
{9, 9, 9, 9, 9, 9, 4 }
Returns: "Possible"
{9, 9, 9, 9, 9, 9, 9, 9, 9 }
Returns: "Possible"
{4, 4, 3, 3 }
Returns: "Possible"
{6, 4, 1 }
Returns: "Possible"
{4, 2, 3 }
Returns: "Possible"
{9, 3, 3, 2 }
Returns: "Possible"
{6, 8, 9, 9, 10, 10, 10, 10, 10, 10 }
Returns: "Possible"
{5, 1, 2 }
Returns: "Possible"
{1, 3, 6, 9 }
Returns: "Possible"
{2, 2, 3, 3, 3 }
Returns: "Impossible"
{2, 2, 4, 7 }
Returns: "Possible"
{1, 10, 10, 10 }
Returns: "Possible"
{2, 2, 3, 4 }
Returns: "Impossible"