fork download
  1. def len = 100
  2. boolean [] arr = new boolean[len]
  3. arr[0] = false;//Fill 1, arr[1] =3
  4.  
  5. def times = Math.sqrt(len) + 2
  6. for(def i = 1; i < times; i++){
  7. def j = i;
  8. def dist = i+i+1;
  9. j += dist;
  10. for(; j < len; j=dist+j){
  11. arr[ j ] = false;
  12. }
  13. }
  14. arr.eachWithIndex{v,i ->println v; println i*2+1 }
Success #stdin #stdout 1.49s 218944KB
stdin
Standard input is empty
stdout
false
1
false
3
false
5
false
7
false
9
false
11
false
13
false
15
false
17
false
19
false
21
false
23
false
25
false
27
false
29
false
31
false
33
false
35
false
37
false
39
false
41
false
43
false
45
false
47
false
49
false
51
false
53
false
55
false
57
false
59
false
61
false
63
false
65
false
67
false
69
false
71
false
73
false
75
false
77
false
79
false
81
false
83
false
85
false
87
false
89
false
91
false
93
false
95
false
97
false
99
false
101
false
103
false
105
false
107
false
109
false
111
false
113
false
115
false
117
false
119
false
121
false
123
false
125
false
127
false
129
false
131
false
133
false
135
false
137
false
139
false
141
false
143
false
145
false
147
false
149
false
151
false
153
false
155
false
157
false
159
false
161
false
163
false
165
false
167
false
169
false
171
false
173
false
175
false
177
false
179
false
181
false
183
false
185
false
187
false
189
false
191
false
193
false
195
false
197
false
199