fork download
  1.  
  2. def len = 100
  3. boolean [] arr = new boolean[len]
  4. len.times{arr[it]=true;}
  5. arr[0] = false;//Fill 1, arr[1] =3
  6.  
  7. //arr.eachWithIndex{v,k ->println v; println k*2+1 }
  8.  
  9. def times = Math.sqrt(len) + 2
  10. for(def i = 1; i < times; i++){
  11. def j = i;
  12. def dist = i+i+1;
  13. j += dist;
  14. for(; j < len; j=dist+j){
  15. arr[ j ] = false;
  16. }
  17. //arr.eachWithIndex{v,k ->println v; println k*2+1 }
  18. }
  19. arr.eachWithIndex{v,i->if(v){ println i*2+1} }
Success #stdin #stdout 1.49s 218816KB
stdin
Standard input is empty
stdout
3
5
7
11
13
17
19
23
29
31
37
41
43
47
53
59
61
67
71
73
79
83
89
97
101
103
107
109
113
127
131
137
139
149
151
157
163
167
173
179
181
191
193
197
199