-
Notifications
You must be signed in to change notification settings - Fork 0
/
581.c
97 lines (81 loc) · 10.8 KB
/
581.c
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
//gcc -fopenmp -g -o main 581.c -lrt
#include <stdio.h>
#include <stdlib.h>
#include <omp.h>
#include <time.h>
static int mpf(long long int value)
{
long long int n = value;
while(n%2==0)
n/=2;
if(n==1) return 1;
while(n%3==0)
n/=3;
if(n==1) return 1;
while(n%5==0)
n/=5;
if(n==1) return 1;
while(n%7==0)
n/=7;
if(n==1) return 1;
while(n%11==0)
n/=11;
if(n==1) return 1;
while(n%13==0)
n/=13;
if(n==1) return 1;
while(n%17==0)
n/=17;
if(n==1) return 1;
while(n%19==0)
n/=19;
if(n==1) return 1;
while(n%23==0)
n/=23;
while(n%29==0)
n/=29;
while(n%31==0)
n/=31;
while(n%37==0)
n/=37;
while(n%41==0)
n/=41;
while(n%43==0)
n/=43;
while(n%47==0)
n/=47;
if(n==1)
return 1;
return 0;
}
void main(int argc, char **argv){
FILE *f;
long long int i;
struct timespec tstart={0,0}, tend={0,0};
f = fopen("list.txt","w");
clock_gettime(CLOCK_MONOTONIC, &tstart);
fprintf(f,"list={0,");
#pragma omp parallel for private(i)
for(i=1;i<1109496723126;i++){
if(i%2==0){
if(mpf(i/2)==1){
if(mpf(i+1)==1)
fprintf(f,"%lld,",i);
else
i++;
}
} else {
if(mpf(i)==1){
if(mpf((i+1)/2)==1)
fprintf(f,"%lld,",i);
else
i++;
}
}
}
fprintf(f,"}\n");
clock_gettime(CLOCK_MONOTONIC, &tend);
printf("\nTiempo:%.5f\n", ((double)tend.tv_sec + 1.0e-9*tend.tv_nsec)-((double)tstart.tv_sec + 1.0e-9*tstart.tv_nsec));
fclose(f);
}
//list={0,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,54,55,56,57,62,63,64,65,68,69,74,75,76,77,80,81,84,85,86,87,90,91,92,93,94,95,98,99,104,110,111,114,115,116,119,120,123,124,125,128,129,132,135,140,143,144,147,152,153,154,155,160,161,164,168,169,170,171,174,175,184,185,186,187,188,189,195,203,204,207,208,209,215,216,220,221,224,230,231,234,242,245,246,247,252,255,258,259,260,272,275,279,285,286,287,288,289,296,299,300,319,322,323,324,328,329,340,341,342,343,344,350,351,360,363,368,369,374,375,376,377,384,390,391,399,405,406,407,429,434,440,441,450,455,459,464,475,480,483,492,493,494,495,506,512,516,517,527,528,532,539,550,551,558,559,560,574,575,588,594,608,611,615,620,624,629,637,644,645,650,665,666,675,696,702,703,704,713,714,725,728,735,740,759,774,779,782,783,798,799,805,816,819,832,836,840,845,846,850,860,867,874,896,899,902,924,930,935,945,960,961,968,986,987,988,989,999,1000,1014,1023,1024,1025,1034,1035,1044,1053,1080,1088,1104,1127,1147,1155,1160,1175,1183,1188,1189,1196,1209,1215,1221,1224,1247,1274,1275,1287,1295,1311,1330,1331,1332,1333,1352,1363,1364,1368,1375,1376,1394,1425,1443,1444,1449,1456,1457,1462,1479,1495,1504,1517,1518,1519,1520,1539,1547,1550,1595,1598,1599,1624,1664,1665,1680,1681,1682,1700,1701,1715,1728,1739,1763,1767,1785,1804,1805,1848,1849,1859,1862,1880,1885,1886,1924,1935,2000,2001,2015,2023,2024,2057,2079,2090,2106,2107,2108,2115,2145,2175,2184,2204,2208,2209,2232,2254,2255,2261,2294,2295,2299,2303,2349,2365,2375,2400,2430,2431,2450,2464,2499,2541,2552,2583,2584,2600,2624,2639,2645,2664,2665,2736,2737,2754,2783,2820,2849,2870,2924,2925,2944,2960,2975,3024,3059,3135,3145,3219,3224,3248,3249,3255,3267,3289,3311,3366,3380,3440,3450,3509,3519,3525,3552,3564,3625,3626,3654,3689,3740,3750,3772,3773,3807,3875,3887,3968,3995,3999,4059,4095,4185,4199,4224,4255,4256,4263,4277,4300,4370,4374,4464,4465,4550,4624,4640,4674,4692,4760,4773,4784,4900,4901,4913,4920,4959,4960,4991,5031,5075,5082,5083,5103,5202,5264,5289,5290,5291,5375,5439,5452,5499,5576,5589,5624,5642,5719,5775,5780,5796,5831,5887,5915,5928,5984,6068,6075,6137,6149,6174,6250,6272,6292,6324,6479,6560,6578,6579,6600,6655,6664,6669,6720,6727,6859,6929,6992,7104,7105,7175,7191,7215,7224,7395,7424,7524,7567,7568,7656,7695,7749,7865,7888,7904,7935,7942,7955,8036,8084,8091,8177,8280,8463,8525,8568,8624,8648,8670,8694,8788,8815,8835,8855,8959,8990,9024,9176,9250,9360,9424,9471,9503,9632,9728,9775,9800,9801,9889,9975,10044,10199,10240,10373,10449,10527,10556,10625,10647,10659,10692,10829,10878,10879,10880,11136,11270,11339,11374,11438,11439,11609,11655,11661,11780,11890,11913,11934,12005,12121,12167,12320,12341,12375,12635,12672,12690,13224,13243,13299,13310,13311,13376,13454,13455,13689,13717,13775,13888,13949,14079,14104,14144,14364,14399,14534,14651,14663,14800,14993,15092,15180,15375,15456,15624,15651,15872,15979,16120,16168,16169,16399,16523,16575,16605,16640,16928,17199,17204,17328,17342,17390,17424,17457,17500,17544,17575,17576,17577,17765,17835,17917,18095,18240,18490,18791,18941,19227,19250,19343,19499,19550,19551,19683,19720,19844,19964,20124,20349,20424,20735,21141,21384,21385,21504,21735,22015,22099,22230,22274,22385,22747,22815,23000,23124,23199,23275,23374,23408,23715,23750,23828,24024,24149,24272,24299,24768,24794,24863,25024,25584,25839,25920,26010,26649,26978,26999,27047,27404,27455,27675,27950,28125,28560,28576,28594,28749,28860,28899,29232,29240,29325,29375,29600,29601,29791,29970,30380,30624,30855,31160,31212,31349,31433,31464,31487,31899,32759,32798,32799,33263,33669,34224,34595,34968,35321,35343,35672,35720,35815,36162,36518,36800,37179,37323,37925,37961,38399,38570,38961,39150,39215,40204,40425,40959,41040,41261,41327,41514,41615,41624,41876,42159,42483,42624,42687,43263,43400,43680,43757,43992,44505,44649,44954,45695,46207,46529,46655,47124,47150,47385,47600,47915,48174,48503,48749,48762,48840,49010,49247,49725,50024,50336,50430,50653,52029,52325,52479,53360,53504,53750,54144,55055,56202,56375,58310,58608,58652,58695,58995,59125,59643,60515,60543,60605,61008,61335,63426,63713,64124,66176,66975,67080,67424,67599,67914,68782,69874,70356,70499,70875,71299,71484,71874,72500,73185,73695,75140,75809,75999,76383,76544,76704,76874,77314,77440,77571,77615,78336,78584,78624,80919,81344,81548,81795,82250,82368,82620,82943,83520,83979,85063,87464,88319,88451,89375,89999,90944,91839,91884,93092,93499,94094,94299,94423,96255,96875,98735,98900,99875,101269,102486,103155,103935,104328,104975,105984,106190,106640,108053,108240,108375,108779,108927,111111,111320,111475,115884,116280,116963,117623,117648,117875,118335,118580,120175,120744,121770,122199,122264,122451,123200,123969,124032,125000,126224,127280,129437,130339,134848,134849,136160,136850,140624,141375,142128,142884,142974,143374,143819,144738,147015,151249,151293,152684,152880,153790,155584,156065,156332,156519,158014,158949,161727,161874,162196,162239,163184,164835,165375,165648,166634,167648,168750,169575,170624,170752,173900,174096,174824,175769,176000,176175,178125,181202,184092,186591,190463,192510,192511,193843,194480,194579,198911,201019,202124,203319,203390,205436,207575,208494,212380,212381,212628,216999,223040,227069,227447,228095,228780,230299,230911,235467,240064,240499,240786,242990,243048,244035,245024,245916,247455,254448,259160,260337,260709,264384,267288,268191,268800,270599,275561,275807,278783,279414,282624,284375,285417,288144,293045,301599,303600,312480,313599,314432,319124,325380,328509,330624,336140,338624,341549,342924,343914,344604,346579,348725,356642,360639,361415,369655,369984,378879,385236,386630,389499,390165,390224,394009,395199,410669,412090,416024,418760,419120,422576,427720,430559,431375,432344,436449,443555,446368,453375,453870,456875,459172,459799,461824,466088,466829,469567,476748,478224,482447,487577,488565,491877,494208,495144,495615,498575,501423,509795,512000,512487,515871,524799,527136,536238,544824,558656,561924,587264,589743,589874,591260,601425,610203,611610,613088,614384,622080,633555,638000,638400,640871,643125,658502,660960,675583,679041,688127,695266,709136,709631,715715,728364,769119,773604,776580,777924,779246,787175,790855,798720,799799,812889,837199,850135,863939,867008,886445,887777,912950,923520,925100,949025,974168,976143,978120,986271,999999,1011839,1031744,1048575,1050624,1055240,1071224,1082564,1104375,1143284,1147124,1152920,1154439,1163799,1187144,1205645,1212083,1213681,1217159,1228122,1233024,1235168,1241316,1243839,1255500,1269359,1273418,1294299,1294370,1302651,1319625,1324224,1331967,1341249,1344717,1359897,1362635,1370109,1402874,1413720,1437500,1459161,1462499,1510784,1518803,1536639,1594175,1600312,1608574,1625624,1634660,1643355,1652144,1708992,1729749,1739999,1763124,1771560,1774223,1776888,1818242,1820104,1852200,1860495,1893375,1922960,1946720,1951641,1973699,2001824,2023424,2055780,2067999,2076255,2085135,2122848,2162094,2185299,2220777,2267915,2276351,2285751,2304323,2307360,2310399,2345056,2350079,2351349,2397680,2404259,2417875,2547534,2556800,2560844,2592512,2598399,2613247,2697695,2758535,2766749,2772224,2812887,2825760,2829123,2893400,3063807,3102449,3107874,3156543,3162159,3206268,3258024,3301375,3331250,3346109,3418800,3453839,3520495,3556995,3681839,3685175,3699849,3742375,3757509,3832191,3864575,3894467,3897165,3912138,3930399,3995000,4004000,4090624,4096575,4243455,4439448,4443663,4492124,4526522,4588310,4688719,4712499,4731375,4765599,4812129,4860504,4879680,4987527,5085024,5142500,5267024,5319600,5538974,5541711,5909760,6159020,6292362,6362624,6458880,6615674,6677055,6702624,6770555,6978125,7102224,7104999,7153024,7240640,7255625,7331624,7474999,7491168,7728819,8070699,8268799,8319375,8555624,8577359,8889776,8912375,8934464,9170264,9174815,9217824,9222499,9345104,9458085,9611875,10000165,10088144,10491039,10556000,10575376,11156249,11690624,11859210,12323584,12890625,13147875,13466816,13745536,13994694,14080572,14235528,14330524,14574559,14753024,14786199,15039999,15054335,15709275,16092999,16190090,17229024,17657288,17903522,18085704,18113535,18366425,18703790,19826575,19936224,20422205,21386000,21844800,22653435,22708191,24019800,24334344,24601599,24822720,25836888,25872147,26044928,26862380,27005264,27550319,27984099,27994680,30138075,30323600,30533139,30944913,31904495,32517264,34028049,34686000,36315135,36695672,38526839,39540864,40750801,41808150,42788095,43075584,43283240,44321375,45759999,48140736,49667579,50481024,51009945,53206725,56319249,56744792,57274623,59181759,65875355,69512013,71843750,76271624,78125796,79384832,80061344,80314367,81538749,83480319,85459374,96059600,101273249,102263634,106846614,118352640,118374399,119094299,130850720,132663167,133919999,136835244,142416000,154466675,177182720,181037024,182827367,182857499,192469375,209644479,226987110,227613749,229856319,261436560,290642030,293635440,308915775,308950928,370256249,382241600,415704575,457318224,487530861,490145733,591130374,611969280,658831250,876219200,920577797,929166875,1018249595,1075774400,1236843399,1611308699,1777331555,3463199999,421138799639,284582707199,11214979424,18184252800,18487252224,37060485120,45105689160,192459125000,63927525375,1109496723125}