@@ -68,7 +68,7 @@ get_uniform_rand_array_with_uniquevalues(int64_t arrsize,
6868template  <typename  T>
6969static  std::vector<T>
7070get_array (std::string arrtype,
71-           int64_t  arrsize,
71+           size_t  arrsize,
7272          T min = xss::fp::min<T>(),
7373          T max = xss::fp::max<T>())
7474{
@@ -80,7 +80,7 @@ get_array(std::string arrtype,
8080    }
8181    else  if  (arrtype == " constant" 
8282        T temp = get_uniform_rand_array<T>(1 , max, min)[0 ];
83-         for  (auto  ii = 0 ; ii < arrsize; ++ii) {
83+         for  (size_t  ii = 0 ; ii < arrsize; ++ii) {
8484            arr.push_back (temp);
8585        }
8686    }
@@ -90,7 +90,20 @@ get_array(std::string arrtype,
9090        std::reverse (arr.begin (), arr.end ());
9191    }
9292    else  if  (arrtype == " smallrange" 
93-         arr = get_uniform_rand_array<T>(arrsize, 10 , 1 );
93+         arr = get_uniform_rand_array<T>(arrsize, 20 , 1 );
94+     }
95+     else  if  (arrtype == " random_5d" 
96+         size_t  temp = std::max ((size_t ) 1 , (size_t ) (0.5  * arrsize));
97+         std::vector<T> temparr = get_uniform_rand_array<T>(temp);
98+         for  (size_t  ii = 0 ; ii < arrsize; ++ii) {
99+             if  (ii < temp) {
100+                 arr.push_back (temparr[ii]);
101+             }
102+             else  {
103+                 arr.push_back ((T) 0 );
104+             }
105+         }
106+         std::shuffle (arr.begin (), arr.end (), std::default_random_engine (42 ));
94107    }
95108    else  if  (arrtype == " max_at_the_end" 
96109        arr = get_uniform_rand_array<T>(arrsize, max, min);
@@ -126,7 +139,7 @@ get_array(std::string arrtype,
126139        else  {
127140            val = std::numeric_limits<T>::max ();
128141        }
129-         for  (auto  ii = 1 ; ii <= arrsize; ++ii) {
142+         for  (size_t  ii = 1 ; ii <= arrsize; ++ii) {
130143            if  (rand () % 0x1 ) {
131144                arr[ii] = val;
132145            }
0 commit comments