Skip to content

Commit 0aeb6c8

Browse files
committed
add cpp runner helper function
1 parent 81e8053 commit 0aeb6c8

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

discrete-optimization/helper.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
from subprocess import Popen, PIPE
2+
import os , re
3+
4+
def cpp_runner(cpp_file_name,input_file_name):
5+
"""
6+
this function for cpp programer
7+
cpp_file_name: str , a cpp source code file name ends with .cpp
8+
input_file_name: str, a input file name
9+
"""
10+
pat = re.compile(r'(.*).cpp')
11+
m = pat.match(cpp_file_name)
12+
# assert (m not None)
13+
file_name = m.group(1)
14+
15+
os.system("g++ -std=c++11 -o3 "+cpp_file_name+" -o "+file_name)
16+
process = Popen(['.\\'+file_name ,'<',input_file_name], stdout=PIPE)
17+
(stdout, _) = process.communicate()
18+
19+
return stdout.strip().decode('utf-8')

0 commit comments

Comments
 (0)