You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "James Bence (JIRA)" <ji...@apache.org> on 2011/04/01 00:40:06 UTC

[jira] [Commented] (MATH-552) MultidimensionalCounter.getCounts(int) returns wrong array of indices

    [ https://issues.apache.org/jira/browse/MATH-552?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13014251#comment-13014251 ] 

James Bence commented on MATH-552:
----------------------------------

To resolve this, replace lines 198 through 204:

int idx = 1;
while (count < index) {
   count += idx;
   idx += 1;
}
--idx;
indices[last] = idx;

with the following:


     indices[last] = index - count;



> MultidimensionalCounter.getCounts(int) returns wrong array of indices
> ---------------------------------------------------------------------
>
>                 Key: MATH-552
>                 URL: https://issues.apache.org/jira/browse/MATH-552
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 2.2
>         Environment: Java 1.6
>            Reporter: James Bence
>            Priority: Minor
>
> MultidimensionalCounter counter = new MultidimensionalCounter(2, 4);
> for (Integer i : counter) {
>     int[] x = counter.getCounts(i);
>     System.out.println(i + " " + Arrays.toString(x));
> }
> Output is:
> 0 [0, 0]
> 1 [0, 1]
> 2 [0, 2]
> 3 [0, 2]   <=== should be [0, 3]
> 4 [1, 0]
> 5 [1, 1]
> 6 [1, 2]
> 7 [1, 2]   <=== should be [1, 3]

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira