Example #1
0
int main(){
    int i, numUnique = 0, b, a;
    short uniqueNum[10000][30] = {{0}};
    short basePrimeFactor[30] = {0}, curr[30] = {0};

    genPrimes();

    for (a = 2; a <= 100; a++){
        memset(basePrimeFactor, 0, sizeof(short)*30); 
        factorize(a, basePrimeFactor);

        for (b = 2; b <= 100; b++){
            for (i = 0; i < 30; i++){
                curr[i] = basePrimeFactor[i]*b;
            }
            if (!isDuplicate(curr, uniqueNum, numUnique)){
                memcpy(uniqueNum[numUnique], curr, sizeof(short)*30);
                numUnique++;
            }
        }
    }

    printf("%d\n", numUnique);

    return 0;
}
Example #2
0
int main(){
    int i, j, k, m;
    int permutations[4*3*2] = {0};
    int currDiff;

    genPrimes();

    for (i = 1001; i < 10000; i += 2){
        if (primes[i]){
            permutations[0] = i;
            genPerms(permutations); /*only prime perms*/
            for (j = 0; permutations[j+2] && j < (4*3*2); j++){
                for (k = j+1; permutations[k+1] && k < (4*3*2); k++){
                    currDiff = permutations[k] - permutations[j];
                    for (m = k+1; permutations[m] && m < (4*3*2); m++){
                        if (permutations[m] == permutations[k] + currDiff){
                            printf("%d%d%d\n", permutations[j], permutations[k],
                                    permutations[m]);
                            return 0;
                        }
                    }
                }
            }

            for (j = 0; permutations[j] && j < 4*3*2; j++){
                primes[j] = 0;
            }    
        }

        memset(permutations, 0, 4*3*2*sizeof(int));
    }

    return -1;
}
Example #3
0
int main( int argc, char** argv){
	primeset* ps = psInit();
	FILE* output = NULL;
	if(argc>1){
		output = fopen(argv[1], "w+");
	}
	genPrimes(ps, 1000000000000, output);
	psDump(ps, 1);
}	
int primesDecomposition(int n)
{
  if(n < 3){
    return -1;
  }
  std::vector<int> primes;
  genPrimes(n, primes);
  std::vector<int> numbers;
  int from = 0;
  primesDecomposition(n, numbers, from, primes);
}
int main(void) {
    
    unsigned long n;
    scanf("%lu", &n);

    genPrimes(n);

    unsigned long max = 1;
    unsigned long ans = 1;

    for(unsigned long i=1; i<=n; i++) {
        unsigned long divisors = factorize(i);
        //printf("%lu has %lu divisors\n", i, divisors);
        if(divisors > max) {
            max = divisors;
            ans = i;
        }
    }

    printf("%lu\n", ans);
    
    return 0;
}
Example #6
0
int main(int argc, char** argv) {
    genPrimes();
    for (int i = 1; i < 10000000; i++){
        cout << totDivisors(i) << " " << i << endl;
    }
}