TopcoderArchiveVisit Topcoder
Archive
Algorithm problem

TransformingArray

Problem statement, definition, constraints, and public examples.

Problem Statement

You are given a int[] a. Perform the following transformation operation N times: replace each element a[i] with the product of all the elements of a except a[i]. All products are calculated using the values of a at the beginning of the operation. For example, if a = {1, 2, 3}, a single transformation would result in a = {2*3, 1*3, 1*2}. Return the 0-based index of the smallest element in a after all the transformations.

Definition

Class:
TransformingArray
Method:
minimalElement
Parameters:
int[], int
Returns:
int
Method signature:
int minimalElement(int[] a, int N)
(be sure your method is public)

Constraints

  • N will be between 0 and 100000, inclusive.
  • a will contain between 1 and 50 elements, inclusive.
  • Each element of a will be between 1 and 10000, inclusive.
  • All elements of a will be distinct.

Examples

  1. {1,2,3,4}
    1
    Returns: 3
    The transformation will result in a = {2*3*4, 1*3*4, 1*2*4, 1*2*3} = {24, 12, 8, 6}. The last element is the smallest.
  2. {3,17,1,10}
    2
    Returns: 2
  3. {650,9511,4746,3187}
    4
    Returns: 0
  4. {8684,3214}
    100000
    Returns: 1
Back to all problems