diff --git a/bucket.c b/bucket.c
index a98e6714dbbd92d64d0b89f9c2656b0902ba1d81..95332f9f4f946077d7c89d9c9f79309cdf6252d8 100644
--- a/bucket.c
+++ b/bucket.c
@@ -47,8 +47,8 @@ int main(int argc, char** argv) {
             int i;
             for(i = id; i < num_elements; i += nthrds) {
                 int dest = data[i]/num_range;
-                bucket[dest][last_idx[id]] = data[i];
-                last_idx[id]++;
+                bucket[dest][last_idx[dest]] = data[i];
+                last_idx[dest]++;
             }
     #pragma omp barrier
            insert_sort(bucket[id],last_idx[id]);
@@ -59,6 +59,7 @@ int main(int argc, char** argv) {
         for(j = 0; j < last_idx[i]; j++) {
             data[k] = bucket[i][j];
             k++;
+            printf("%d - ",data[k-1]);
         }
     }
     for(i =0; i < num_elements; i++) {