15
15
from subprocess import call
16
16
from functools import partial , wraps
17
17
import re
18
+ import os
19
+ import shutil
18
20
19
21
# User modifiable constants:
20
22
TEMPLATE = 'main.cc'
@@ -183,7 +185,8 @@ def generate_test_script(folder, num_tests, problem):
183
185
' fi\n '
184
186
'done\n '
185
187
.format (num_tests , BOLD , NORM , GREEN_F , RED_F , TIME_CMD , TIME_AP ))
186
- call (['chmod' , '+x' , folder + 'test.sh' ])
188
+ if os .name in ['posix' ]:
189
+ call (['chmod' , '+x' , folder + 'test.sh' ])
187
190
188
191
# Main function.
189
192
def main ():
@@ -203,8 +206,11 @@ def main():
203
206
for index , problem in enumerate (content .problems ):
204
207
print ('Downloading Problem %s: %s...' % (problem , content .problem_names [index ]))
205
208
folder = '%s/%s/' % (contest , problem )
206
- call (['mkdir' , '-p' , folder ])
207
- call (['cp' , '-n' , TEMPLATE , '%s/%s/%s.cc' % (contest , problem , problem )])
209
+ if not os .path .exists (folder ):
210
+ os .makedirs (folder )
211
+ # call(['mkdir', '-p', folder])
212
+ # call(['cp', '-n', TEMPLATE, '%s/%s/%s.cc' % (contest, problem, problem)])
213
+ shutil .copyfile (TEMPLATE , '%s/%s/%s.cc' % (contest , problem , problem ))
208
214
num_tests = parse_problem (folder , contest , problem )
209
215
print ('%d sample test(s) found.' % num_tests )
210
216
generate_test_script (folder , num_tests , problem )
0 commit comments