Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "Generator_ACG.h"
- #include "Generator_LCG.h"
- #include <math.h>
- #include <iostream>
- int* Generate_ACG (int numberOfNumbers, int maxNumber)
- {
- int* numbersArray = Generate(numberOfNumbers, maxNumber);
- int* newArray = new int [numberOfNumbers];
- int* myPair = FindPair(numberOfNumbers);
- for (int i = 0; i < numberOfNumbers; i++)
- {
- numbersArray[myPair[1]] = fmod((numbersArray[myPair[0]] + numbersArray[myPair[1]]), maxNumber);
- newArray[i] = numbersArray[myPair[1]];
- myPair[0]--;
- myPair[1]--;
- if(myPair[1] == 1)
- {
- myPair[1] = maxNumber;
- }
- else if (myPair[0] == 0)
- {
- myPair[0] = 0;
- }
- }
- return numbersArray;
- }
- int* FindPair (int length)
- {
- int* myPair = new int [2];
- int iterator = 0;
- int maxDistance = 0;
- int maxIndex = 0;
- int pairs_x[] = {1,1,1,2,1,1,3,4,3,2,1,4,7,3,5,6,7,3,2,1,5,9,3,7,3,9,13,2,3,6,7,13,13,2,11,4,8,14,3,20,5,14,20,21,9,12,15,22,3,19,21,24,7,22,19,1,11,1,5,31,18,32,9,33,6,9,18,20,35,25,28,31,9,19,4,16,35,13,13,38,2,21,11,17,6,12,33,34,11,27 };
- int pairs_y[] = {2,3,4,5,6,7,7,9,10,11,15,15,15,17,17,17,18,20,21,22,23,23,25,25,28,28,28,29,31,31,31,31,33,35,36,39,39,39,41,41,47,47,47,47,49,49,49,49,52,52,52,55,57,57,58,60,60,63,63,63,65,65,68,68,71,71,71,71,71,73,73,73,79,79,81,81,81,84,87,89,93,94,95,95,97,97,97,97,98,98 };
- while (pairs_y[iterator] < length)
- {
- if(pairs_y[iterator]-pairs_x[iterator] > maxDistance)
- {
- maxDistance = pairs_y[iterator]-pairs_x[iterator];
- maxIndex = iterator;
- }
- iterator++;
- }
- myPair[0] = pairs_x[maxIndex];
- myPair[1] = pairs_y[maxIndex];
- return myPair;
- }
- ---------------------------------
- #include "Generator_Shuffle.h"
- #include "Generator_LCG.h"
- #include <iostream>
- int* Generate_Shuffle (int numberOfNumbers, int maxNumber)
- {
- int* numbersArray = Generate(numberOfNumbers, maxNumber);
- int randomIndex_1, randomIndex_2, temp;
- for(int i = 0; i < (3 * numberOfNumbers); i++) //3n
- {
- randomIndex_1 = SeedGenerator(numberOfNumbers);
- randomIndex_2 = SeedGenerator(numberOfNumbers);
- temp = numbersArray[randomIndex_1];
- numbersArray[randomIndex_1] = numbersArray[randomIndex_2];
- numbersArray[randomIndex_2] = temp;
- }
- return numbersArray;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement