Skip to content
Extraits de code Groupes Projets
Valider 1096a301 rédigé par Laurent Paucot's avatar Laurent Paucot
Parcourir les fichiers

faster algorithm

parent 5c7a1681
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
666343 7487 89
463698 277 31 3 2
1021406 7193 71 2
506156 18077 7 2
913231 1361 61 11
268205 97 79 7 5
982865 15121 13 5
917451 101939 3
499176 2311 3 2
529973
746782 5573 67 2
276324 23027 3 2
435465 9677 5 3
352649 32059 11
104121 503 23 3
981518 113 101 43 2
413102 206551 2
880413 283 61 17 3
676364 13007 13 2
804603 4003 67 3
1012028 2239 113 2
364381 787 463
780260 3001 13 5 2
907169
142193
408465 313 29 5 3
266175 13 7 5 3
171413 15583 11
518652 14407 3 2
770297 293 239 11
134273 191 37 19
638327
826830 9187 5 3 2
220605 191 11 7 5 3
162237 1319 41 3
53202 8867 3 2
494421 5683 29 3
309475 12379 5
361113 120371 3
1033840 12923 5 2
319499
981506 1367 359 2
404743 10939 37
897560 1181 19 5 2
1023027 3187 107 3
354480 211 7 5 3 2
793492 1667 17 7 2
102802 1049 7 2
843491 6971 11
983760 4099 5 3 2
404152 1031 7 2
283682 881 23 7 2
526652 2687 7 2
1018 509 2
324508 2617 31 2
103308 8609 3 2
9422 673 7 2
793590 3779 7 5 3 2
241316 61 43 23 2
132914 66457 2
978150 6521 5 3 2
725819 38201 19
828636 347 199 3 2
224489 7741 29
431210 107 31 13 5 2
705190 727 97 5 2
470751 4241 37 3
182145 12143 5 3
728190 31 29 5 3 2
3574 1787 2
813793 1933 421
17035 3407 5
795384 11047 3 2
534134 5039 53 2
498463 71209 7
385529 197 103 19
624262 683 457 2
697671 89 67 13 3
613191 204397 3
866262 409 353 3 2
58631
290417 3499 83
901545 60103 5 3
86993
607222 3943 11 7 2
437288 1163 47 2
122029
840703
647460 109 11 5 3 2
42875 7 5
135229 499 271
1033268 258317 2
361034 1861 97 2
916343 39841 23
739080 2053 5 3 2
975089
82667 6359 13
670049
640632 26693 3 2
950453 163 17 7
14 7 2 666343 7487 89
13 463698 277 31 3 2
100 5 2 1021406 7193 71 2
1225 7 5 506156 18077 7 2
5946 991 3 2 913231 1361 61 11
268205 97 79 7 5
982865 15121 13 5
917451 101939 3
499176 2311 3 2
529973
746782 5573 67 2
276324 23027 3 2
435465 9677 5 3
352649 32059 11
104121 503 23 3
981518 113 101 43 2
413102 206551 2
880413 283 61 17 3
676364 13007 13 2
804603 4003 67 3
1012028 2239 113 2
364381 787 463
780260 3001 13 5 2
907169
142193
408465 313 29 5 3
266175 13 7 5 3
171413 15583 11
518652 14407 3 2
770297 293 239 11
134273 191 37 19
638327
826830 9187 5 3 2
220605 191 11 7 5 3
162237 1319 41 3
53202 8867 3 2
494421 5683 29 3
309475 12379 5
361113 120371 3
1033840 12923 5 2
319499
981506 1367 359 2
404743 10939 37
897560 1181 19 5 2
1023027 3187 107 3
354480 211 7 5 3 2
793492 1667 17 7 2
102802 1049 7 2
843491 6971 11
983760 4099 5 3 2
404152 1031 7 2
283682 881 23 7 2
526652 2687 7 2
1018 509 2
324508 2617 31 2
103308 8609 3 2
9422 673 7 2
793590 3779 7 5 3 2
241316 61 43 23 2
132914 66457 2
978150 6521 5 3 2
725819 38201 19
828636 347 199 3 2
224489 7741 29
431210 107 31 13 5 2
705190 727 97 5 2
470751 4241 37 3
182145 12143 5 3
728190 31 29 5 3 2
3574 1787 2
813793 1933 421
17035 3407 5
795384 11047 3 2
534134 5039 53 2
498463 71209 7
385529 197 103 19
624262 683 457 2
697671 89 67 13 3
613191 204397 3
866262 409 353 3 2
58631
290417 3499 83
901545 60103 5 3
86993
607222 3943 11 7 2
437288 1163 47 2
122029
840703
647460 109 11 5 3 2
42875 7 5
135229 499 271
1033268 258317 2
361034 1861 97 2
916343 39841 23
739080 2053 5 3 2
975089
82667 6359 13
670049
640632 26693 3 2
950453 163 17 7
14 666343
13 463698
100 1021406
1225 506156
5946 913231
268205
982865
917451
499176
529973
746782
276324
435465
352649
104121
981518
413102
880413
676364
804603
1012028
364381
780260
907169
142193
408465
266175
171413
518652
770297
134273
638327
826830
220605
162237
53202
494421
309475
361113
1033840
319499
981506
404743
897560
1023027
354480
793492
102802
843491
983760
404152
283682
526652
1018
324508
103308
9422
793590
241316
132914
978150
725819
828636
224489
431210
705190
470751
182145
728190
3574
813793
17035
795384
534134
498463
385529
624262
697671
613191
866262
58631
290417
901545
86993
607222
437288
122029
840703
647460
42875
135229
1033268
361034
916343
739080
975089
82667
670049
640632
950453
...@@ -71,15 +71,13 @@ queue_t* prime_divs(long number){ ...@@ -71,15 +71,13 @@ queue_t* prime_divs(long number){
if (ptr == NULL){return NULL;} if (ptr == NULL){return NULL;}
*ptr = new_queue; *ptr = new_queue;
for (long i = 2; i < number; i++){ for (long i = 2; i <= number/2; i++){
if (is_prime(i) == 1 && is_div(number, i)){ if (is_div(number, i) && is_prime(i) == 1){
ptr = enqueue(ptr,i); ptr = enqueue(ptr,i);
if (ptr == NULL){return NULL;} if (ptr == NULL){return NULL;}
} }
} }
//ptr = enqueue(ptr,-1);
//if (ptr == NULL){return NULL;}
return ptr; return ptr;
...@@ -107,6 +105,7 @@ int run (char *input,char *output){ ...@@ -107,6 +105,7 @@ int run (char *input,char *output){
struct queue *pr_divs; struct queue *pr_divs;
pr_divs = malloc(sizeof(queue_t)); pr_divs = malloc(sizeof(queue_t));
if (pr_divs == NULL){return -1;} if (pr_divs == NULL){return -1;}
char *c; char *c;
pr_divs = prime_divs(strtol(chaine,&c,10)); pr_divs = prime_divs(strtol(chaine,&c,10));
...@@ -114,11 +113,13 @@ int run (char *input,char *output){ ...@@ -114,11 +113,13 @@ int run (char *input,char *output){
ptr = malloc(50); ptr = malloc(50);
ptr = strchr(chaine,'\n'); ptr = strchr(chaine,'\n');
*ptr = '\0'; *ptr = '\0';
struct node *current; struct node *current;
current = malloc(sizeof(node_t)); current = malloc(sizeof(node_t));
if (current == NULL){return -1;} if (current == NULL){return -1;}
*current = *pr_divs->tail; *current = *pr_divs->tail;
current = current->next; current = current->next;
fprintf(file2,"%s",chaine); fprintf(file2,"%s",chaine);
for (int i = 0; i < pr_divs->size; i++) for (int i = 0; i < pr_divs->size; i++)
{ {
......
...@@ -44,8 +44,8 @@ void file_test(void){ ...@@ -44,8 +44,8 @@ void file_test(void){
while (fgets(chaine1,50,file1) != NULL && fgets(chaine2,50,file2) != NULL) while (fgets(chaine1,50,file1) != NULL && fgets(chaine2,50,file2) != NULL)
{ {
printf("%s\n",chaine1); //printf("%s\n",chaine1);
printf("%s\n",chaine2); //printf("%s\n",chaine2);
CU_ASSERT_STRING_EQUAL(chaine1,chaine2); CU_ASSERT_STRING_EQUAL(chaine1,chaine2);
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter