From 58e4c77b1d5f8241af91c55e1a8efaba3115dc6b Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 25 Oct 2020 17:16:31 +0800 Subject: import(life): Add algorithm contest 2. --- works/life/algorithm-contest-2/gen.ps1 | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 works/life/algorithm-contest-2/gen.ps1 (limited to 'works/life/algorithm-contest-2/gen.ps1') diff --git a/works/life/algorithm-contest-2/gen.ps1 b/works/life/algorithm-contest-2/gen.ps1 new file mode 100644 index 0000000..60b88b2 --- /dev/null +++ b/works/life/algorithm-contest-2/gen.ps1 @@ -0,0 +1,39 @@ +Push-Location solution + +foreach ($problem in 1..5) { + clang-cl "$problem.cpp" /O2 "-fsanitize=address,undefined" +} + +Pop-Location + +Remove-Item -Recurse output + +mkdir .\output + +$time_output = @() + +foreach ($problem in 1..5) { + mkdir output/$problem + foreach ($genfile in Get-ChildItem "generator/$problem") { + if ($genfile.Name -match "(.+)\.in") { + $genfile_id = $Matches[1] + Copy-Item $genfile output/$problem + } + elseif ($genfile.Name -match "(.+)\.cpp") { + $genfile_id = $Matches[1] + Push-Location "generator/$problem" + clang-cl $genfile.Name /O2 "-fsanitize=address,undefined" + Pop-Location + & "./generator/$problem/$genfile_id.exe" > "./output/$problem/$genfile_id.in" + } + $time = (Measure-Command { + Get-Content "./output/$problem/$genfile_id.in" | & "./solution/$problem.exe" > "./output/$problem/$genfile_id.out" + }).TotalSeconds + + $time_output += "Problem $problem test point $genfile_id time: $time s." + } +} + +foreach ($line in $time_output) { + Write-Output $line +} -- cgit v1.2.3