chore: upgrade problem and ubuntu-full to next version

This commit is contained in:
Paul Pan 2024-01-27 21:59:38 +08:00
parent 025c88ca6b
commit bda209f794
Signed by: Paul
GPG Key ID: D639BDF5BA578AF4
29 changed files with 602 additions and 718 deletions

View File

@ -0,0 +1,5 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="PREFERRED_PROJECT_CODE_STYLE" value="Default" />
</state>
</component>

View File

@ -1,6 +1,6 @@
*
!.gitignore
!example
!example/*
!example/**/*
!book
!book/**/*

View File

@ -1,43 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 20
},
{
"Id": 2,
"Points": 20
},
{
"Id": 3,
"Points": 20
},
{
"Id": 4,
"Points": 20
},
{
"Id": 5,
"Points": 20
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -1,47 +1,22 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "FCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "FCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 10
},
{
"Id": 2,
"Points": 10
},
{
"Id": 3,
"Points": 10
},
{
"Id": 4,
"Points": 23
},
{
"Id": 5,
"Points": 22
},
{
"Id": 6,
"Points": 25
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "FCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "FCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 23},
{"Id": 5, "Points": 22},
{"Id": 6, "Points": 25}
]
}

View File

@ -1,43 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "NCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "NCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 20
},
{
"Id": 2,
"Points": 20
},
{
"Id": 3,
"Points": 20
},
{
"Id": 4,
"Points": 20
},
{
"Id": 5,
"Points": 20
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -1,63 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 10
},
{
"Id": 2,
"Points": 10
},
{
"Id": 3,
"Points": 10
},
{
"Id": 4,
"Points": 10
},
{
"Id": 5,
"Points": 10
},
{
"Id": 6,
"Points": 10
},
{
"Id": 7,
"Points": 10
},
{
"Id": 8,
"Points": 10
},
{
"Id": 9,
"Points": 10
},
{
"Id": 10,
"Points": 10
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,63 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 10
},
{
"Id": 2,
"Points": 10
},
{
"Id": 3,
"Points": 10
},
{
"Id": 4,
"Points": 10
},
{
"Id": 5,
"Points": 10
},
{
"Id": 6,
"Points": 10
},
{
"Id": 7,
"Points": 10
},
{
"Id": 8,
"Points": 10
},
{
"Id": 9,
"Points": 10
},
{
"Id": 10,
"Points": 10
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,43 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 20
},
{
"Id": 2,
"Points": 20
},
{
"Id": 3,
"Points": 20
},
{
"Id": 4,
"Points": 20
},
{
"Id": 5,
"Points": 20
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -1,63 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{
"Lang": "c",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
},
{
"Lang": "cpp",
"Type": "default",
"Script": "",
"Cmp": "HCMP"
}
],
"Tasks": [
{
"Id": 1,
"Points": 10
},
{
"Id": 2,
"Points": 10
},
{
"Id": 3,
"Points": 10
},
{
"Id": 4,
"Points": 10
},
{
"Id": 5,
"Points": 10
},
{
"Id": 6,
"Points": 10
},
{
"Id": 7,
"Points": 10
},
{
"Id": 8,
"Points": 10
},
{
"Id": 9,
"Points": 10
},
{
"Id": 10,
"Points": 10
}
]
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "HCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,23 +1,26 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 10 },
{ "Id": 2, "Points": 10 },
{ "Id": 3, "Points": 10 },
{ "Id": 4, "Points": 10 },
{ "Id": 5, "Points": 10 },
{ "Id": 6, "Points": 10 },
{ "Id": 7, "Points": 10 },
{ "Id": 8, "Points": 10 },
{ "Id": 9, "Points": 10 },
{ "Id": 10, "Points": 10 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 10},
{"Id": 3, "Points": 10},
{"Id": 4, "Points": 10},
{"Id": 5, "Points": 10},
{"Id": 6, "Points": 10},
{"Id": 7, "Points": 10},
{"Id": 8, "Points": 10},
{"Id": 9, "Points": 10},
{"Id": 10, "Points": 10}
]
}

View File

@ -1,18 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 20 },
{ "Id": 2, "Points": 20 },
{ "Id": 3, "Points": 20 },
{ "Id": 4, "Points": 20 },
{ "Id": 5, "Points": 20 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -1,18 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "LCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "LCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 20 },
{ "Id": 2, "Points": 20 },
{ "Id": 3, "Points": 20 },
{ "Id": 4, "Points": 20 },
{ "Id": 5, "Points": 20 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "LCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "LCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -1,18 +1,21 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{ "Lang": "c", "Type": "default", "Script": "", "Cmp": "NCMP" },
{ "Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP" }
],
"Tasks": [
{ "Id": 1, "Points": 20 },
{ "Id": 2, "Points": 20 },
{ "Id": 3, "Points": 20 },
{ "Id": 4, "Points": 20 },
{ "Id": 5, "Points": 20 }
]
}
"Languages": [
{
"Lang" : "c",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
},
{
"Lang" : "cpp",
"Judge:" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}}
}
],
"Tasks" : [
{"Id": 1, "Points": 20},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 20},
{"Id": 4, "Points": 20},
{"Id": 5, "Points": 20}
]
}

View File

@ -25,22 +25,40 @@
```json5
{
"Runtime": {
// 运行时配置
"TimeLimit": 1000, // 时间限制 (ms)
"MemoryLimit": 16, // 内存限制 (MB)
"NProcLimit": 1 // 进(线)程 限制
},
"Languages": [
// 支持的语言
// c 语言,使用自定义评测脚本,脚本为 ./judge/XYZ.Makefile
{"Lang": "c", "Type": "custom", "Script": "XYZ.Makefile", "Cmp": ""},
// c++ 语言,使用默认评测脚本,答案比对方式为 NCMP(testlib)
{"Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP"}
],
"Tasks": [
// 评测点信息
{"Id": 1, "Points": 10}, // 第一个评测点,分值 25 分,使用 ./data/{input,output}/1.{input,output} 为测试数据
"Languages": [
{
// C 语言
"Lang" : "c",
// 使用自定义评测脚本,脚本为 ./judge/custom.MakefileCmp 将被忽略
"Judge" : {"Type": "custom", "Script": "custom.Makefile", "Cmp": ""},
// 运行时配置:时间(ms) 内存(MB) 进/线程数目
"Runtime": {
// 题目构建阶段,用于生成测试数据等,可选,默认值见下
"Prebuild": {"TimeLimit": 300000, "MemoryLimit": 256, "NProcLimit": 64},
// 编译阶段,可选,默认值见下
"Compile" : {"TimeLimit": 60000, "MemoryLimit": 256, "NProcLimit": 64},
// 运行阶段,必选
"Run" : {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1},
// 答案检查阶段,可选,默认值见下
"Check" : {"TimeLimit": 60000, "MemoryLimit": 128, "NProcLimit": 64}
}
},
{
// C++ 语言
"Lang" : "cpp",
// 使用默认评测脚本,答案比对方式为 NCMP(testlib)Script 将被忽略
"Judge" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
// 运行时配置Run 必须存在,其余可选,默认值见 C 语言部分
"Runtime": {
"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}
}
}
],
// 评测点信息,总分应当为 100 分
"Tasks" : [
// 第一个评测点,分值 10 分,使用 ./data/{input,output}/1.{input,output} 为测试数据
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 30},
{"Id": 4, "Points": 40}

View File

@ -1,14 +1,24 @@
{
"Runtime": {
"TimeLimit": 1000,
"MemoryLimit": 16,
"NProcLimit": 1
},
"Languages": [
{"Lang": "c", "Type": "custom", "Script": "XYZ.Makefile", "Cmp": ""},
{"Lang": "cpp", "Type": "default", "Script": "", "Cmp": "NCMP"}
{
"Lang" : "c",
"Judge" : {"Type": "custom", "Script": "XYZ.Makefile", "Cmp": ""},
"Runtime": {
"Prebuild": {"TimeLimit": 300000, "MemoryLimit": 256, "NProcLimit": 64},
"Compile" : {"TimeLimit": 60000, "MemoryLimit": 256, "NProcLimit": 64},
"Run" : {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1},
"Check" : {"TimeLimit": 60000, "MemoryLimit": 128, "NProcLimit": 64}
}
},
{
"Lang" : "cpp",
"Judge" : {"Type": "default", "Script": "", "Cmp": "NCMP"},
"Runtime": {
"Run": {"TimeLimit": 1000, "MemoryLimit": 16, "NProcLimit": 1}
}
}
],
"Tasks": [
"Tasks" : [
{"Id": 1, "Points": 10},
{"Id": 2, "Points": 20},
{"Id": 3, "Points": 30},

View File

@ -3,7 +3,6 @@ include ${TEMPLATE}/c.mk ${TEMPLATE}/Judger.mk
# 评测分四个阶段
# 1. prebuild: 用于提前生成测试数据、评测器、spj等工具runner 只执行一次
# 详细信息见 XYZ.Makefile
# 2. compile: 用于编译用户提交的程序
# 目录映射情况:
# /woj/problem/judge 映射到题目目录的 ./judge <-- Readonly
@ -30,8 +29,6 @@ include ${TEMPLATE}/c.mk ${TEMPLATE}/Judger.mk
# TEST_NUM=... <-- 当前测试点编号
# CMP=... <-- 在 config.json 中配置的比较器,如 NCMP
# 其余通用环境变量,详见 ubuntu-full.Dockerfile
# 执行限制:
# 目前版本硬编码限制:时间 60s内存 256mb
compile:
$(CC) $(CFLAGS) -o $(PREFIX)/user/$(USER_PROG).out $(PREFIX)/user/$(USER_PROG).$(LANG) $(PREFIX)/problem/judge/gadget.c

View File

@ -1,9 +1,17 @@
FROM docker.io/library/ubuntu:22.04
WORKDIR /woj
# Install dependencies
RUN apt-get update && apt-get upgrade -y && apt-get install -y gcc g++ clang make cmake autoconf m4 libtool gperf git parallel python3 wget && apt-get clean && rm -rf /var/lib/apt/lists
RUN wget https://go.dev/dl/go1.21.5.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.5.linux-amd64.tar.gz && rm go1.21.5.linux-amd64.tar.gz
# Install dependencies & languages
RUN apt-get update && apt-get upgrade -y && apt-get install -y software-properties-common \
&& add-apt-repository ppa:pypy/ppa && apt-get update \
&& apt-get install -y \
git parallel wget curl \
gcc g++ clang make cmake autoconf m4 libtool gperf \
python3 pypy3 \
&& apt-get clean && rm -rf /var/lib/apt/lists
RUN wget https://go.dev/dl/go1.21.6.linux-amd64.tar.gz && rm -rf /usr/local/go && tar -C /usr/local -xzf go1.21.6.linux-amd64.tar.gz && rm go1.21.6.linux-amd64.tar.gz
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
ENV PATH=/usr/local/go/bin:/root/.cargo/bin:$PATH
# Copy source code
RUN mkdir -p /woj/framework && mkdir -p /woj/problem