Recherche par fréquence dans deux tableaux
Bonjour tout le monde.
J'ai deux tableaux a [] et b [] d'une longueur comprise entre 1 à 10, valeur aléatoire comprise entre 1 à 10.
- les valeurs de a et b ne sont pas modifiables.
- la fusion de a et b n’est pas permise
J’ai droit d'utiliser un seul loop.
La réponse attendue devrait être : La recherche d’un nombre dans un dictionnaire dont sa valeur serait la fréquence de a et b.
Par exemple :
Code:
1 2 3
| a = [2,1,1,4 ]
b = [1,3,3,5,5]
response {1:3,2:1,5:2,3:2,4:1} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
| #include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cstdlib>
#include <ctime>
using namespace std;
class mergeCounter
{
public:
mergeCounter()
{
srand(static_cast<unsigned int>(time(NULL)));
}
unsigned int operator()(unsigned int max)
{
double time = static_cast<double>(rand()) / static_cast<double>(RAND_MAX);
return static_cast<unsigned int>(time * max);
}
};
int main(int argc, char** argv)
{
int mergeCounter_numbers[10000];
int size = sizeof(mergeCounter_numbers) / sizeof(int);
for (int i = 1; i<size; ++i)
mergeCounter_numbers[i] = i;
mergeCounter r;
random_shuffle(mergeCounter_numbers, mergeCounter_numbers + size, r);
for (int i = 1; i < 10000; i++)
{
cout << mergeCounter_numbers[i] << endl;
}
//-------------JE N ARRIVE A INTEGRER LES DEUX TABLEAUX
int a[] = { 3,1,2,4,10,30,10 };
int b[] = { 10,30,1,2,1,3,6,3,5 };
mergeCounter *Ideone = new mergeCounter();
int *mergeCounter = new int();
//--------------------HELP IS NEEDING BY HERE GUYS
system("pause");
return 0;
} |
Voilà ce que j'essaye de faire. Qui a une idée ?