比如某一个题,你写了一个函数,提交了,运行结果你通过了
这个在 leetcode 后台具体是怎么实现的?你传过去的是一个大大长长的字符串,然后他们要把这个字符串写入某个文件,比如 py 文件,比如 Java 文件,比如 js 文件
然后有一个外部的函数来调用这个文件里的函数?
后台用什么运行? docker ?
1
Mutoo 2022-01-05 16:37:45 +08:00 via iPhone
https://github.com/zhblue/hustoj
可以参考开源 oj 本质就是在一个受限环境编译运行你的代码,跑测试数据并统计结果。 |
2
mrlmh00 2022-01-05 16:40:02 +08:00
你看看开源的 oj 怎么实现的呗
https://github.com/zhblue/hustoj |
4
zouzou0208 2022-01-05 17:31:34 +08:00 via iPhone 1
|
5
zouzou0208 2022-01-05 17:32:44 +08:00 via iPhone
是 docker 运行,但做了安全保护,无法逃逸。这篇文章写了 python 的,关于其它语言可以用这个方式自己研究。
|
6
constructor 2022-01-06 13:49:12 +08:00
前几天对 replit 运行代码研究过:使用 docker 运行单个代码文件或项目,
https://v2ex.com/t/821487#r_11174090 |