مدونة Qingyu✨

المدونات

Tags
None

The 3rd Universal Cup Semifinals --- TechNotes

2025-08-15 19:38:07 By Qingyu

The 3rd Universal Cup Semifinals TechNotes

Last update: Aug 15, 2025

Issued by the Technical Committee (TC)

This document contains important technical information related to the Universal Cup Finals programming environment. It is important that your team read and understand all the information below.

Programs

  1. The languages allowed in the contest are C, C++, D, Go, Haskell, Java, Kotlin, Pascal, Python 3 and Rust.
  2. There is a limit of 200 kibibytes on the length of file submitted for judging.
  3. Your program must read its input from "standard input".
  4. Your program should send its output to "standard output". Your program may also send output to "standard error", but only output sent to "standard output" will be considered during judging. (Note that sending too much output to "standard error" might be harmful, in the sense that it can slow your program down.)
  5. If your program exits with a non-zero exit code, it will be judged as a RE with the verdict Dangerous Syscalls. This can have a lot of different causes like division by zero, incorrectly addressing memory (e.g. by indexing arrays out of bounds), trying to use more memory than the limit, reading or writing to files, etc.
  6. Programs submitted to the judges will be run inside a "sandbox".
    • The sandbox will allocate memory for your program as specified in each problem.
    • Your entire program, including its runtime environment, must execute within the specified memory limit for the problem. For interpreted languages (Java, Kotlin and Python), the "runtime environment" includes the interpreter (that is, the JVM for Java and Kotlin and the Python interpreter for Python).
  7. The sandbox memory allocation limit will be the same for every language.
  8. The command and command-line arguments used to invoke your program within the sandbox are the same as those given below.
  9. Programs running in the sandbox will be "pinned" to a single CPU core.

Compilers

C++ (C++98, C++11, C++14, C++17, C++20, C++23, C++26)

All C++ submissions are compiled using GCC 14.2.0. The detailed compilation tag is as follows:

g++ -o answer -x c++ answer.code -lm -O2 -DONLINE_JUDGE -std=c++XX

The -std=c++XX flag will be set according to your chosen standard (98, 11, 14, 17, 20, or 23).

C (C99, C11)

All C submissions are compiled using GCC 14.2.0. The detailed compilation tag is as follows:

gcc -o answer -x c answer.code -lm -O2 -DONLINE_JUDGE -std=cXX

The -std=cXX flag will be set to either c99 or c11 based on your selection.

Java (Java 8, Java 11, Java 17, Java 21)

We use Open JDK for all Java submissions.

  • Java 8: openjdk version "1.8.0_462"
  • Java 11: openjdk 11.0.28
  • Java 17: openjdk 17.0.16
  • Java 21: openjdk 21.0.8

Flags -Xmx2048m, -Xss1024m, and -XX:ActiveProcessorCount=1 will be added when running Java programs.

Python (Python 3)

The Python Interpreter we used is Python 3.13.7.

Rust

The Rust compiler we used is rustc 1.89.0 (29483883e 2025-08-04). The detailed compilation tag is as follows:

rustc -o answer -C opt-level=3 --edition=2021 answer.code

D

The D compiler we used is DMD64 D Compiler v2.109.1. The detailed compilation tag is as follows:

dmd answer -O -release -inline -boundscheck=off

Pascal

The Pascal compiler we used is fpc, Free Pascal Compiler version 3.2.2. The detailed compilation tag is as follows:

fpc answer.code -O2

Haskell

The Haskell compiler we used is ghc, The Glorious Glasgow Haskell Compilation System, version 9.4.7. The detailed compilation tag is as follows:

ghc -O2 -rtsopts -XSafe -no-keep-hi-files -no-keep-o-files -static -o answer answer.hs

Kotlin

The Kotlin compiler we used is kotlinc-jvm 2.1.0 (JRE 21.0.5+11-Ubuntu-1ubuntu124.04). The JVM option we used to run Kotlin programs is the same as we used in Java programs.

Go

The Go compiler we used is go version go1.22.2 linux/amd64.

go build -o answer -ldflags -s -w -trimpath

第三届 Universal Cup 半决赛 —— 比赛规则

2025-08-13 15:10:02 By Qingyu

第三届 Universal Cup 半决赛比赛规则

最后更新:2025 年 8 月 11 日

由 Universal Cup 科学委员会(SC)与技术委员会(TC)发布

The English version of this document can be found here.

Universal Cup 是一个旨在服务竞赛编程社区的组织,致力于提供高质量的训练资源并举办全球现场赛事。第三届 Universal Cup 半决赛(以下简称“半决赛”)是第三届 Universal Cup 总决赛(以下简称“总决赛”)的资格赛,属于我们总决赛资格体系的一部分。

本文档定义了半决赛的规则。您必须阅读并遵守以下规则。违反规则可能会导致您被取消半决赛资格及未来的总决赛资格。

请注意! 我们为所有希望通过半决赛晋级总决赛的队伍引入了桌面录屏要求。请仔细阅读“监考录屏”部分了解更多细节!

第三届 Universal Cup 半决赛规则

最后更新:2025 年 8 月 11 日

由科学委员会(SC)发布

Universal Cup 是一个旨在服务竞赛编程社区的组织,致力于提供高质量的训练资源并举办全球现场赛事。第三届 Universal Cup 半决赛(以下简称“半决赛”)是第三届 Universal Cup 总决赛的资格赛,属于我们总决赛资格体系的一部分。

本文档定义了半决赛的规则。您必须阅读并遵守以下规则。违反规则可能会导致您被取消半决赛资格及未来的总决赛资格。

请注意! 我们为所有希望通过半决赛晋级总决赛的队伍引入了桌面录屏要求。请仔细阅读“监考录屏”部分了解更多细节!

比赛形式

  1. 比赛时长为 五小时。如遇不可预见的情况,裁判长有权调整比赛时长。如比赛形式或时长发生任何变动,将及时且统一通知参赛选手。
  2. 比赛题目数量不少于 10 题且不超过 15 题。
  3. 队伍可通过澄清请求对题目可能存在的错误进行反馈。澄清请求必须仅用英文书写。
  4. 比赛期间可能会发布澄清,这些澄清可能包括题目说明、附加细节、额外样例或题目的修改(包括增加、删除或更改)。
  5. 所有澄清将仅用英文发布在比赛平台的比赛索引页。

题目

  1. 所有题面将仅用英文提供。
  2. 队伍可使用词典或在线翻译工具将题面翻译成其他语言。官方不提供翻译。
  3. 所有题目均不设置部分分。
  4. 题目类型包括:
    • 标准 I/O 题:程序必须从标准输入读取数据并向标准输出输出结果。
    • 交互题:程序需通过标准 I/O 与交互器交互。
    • 多次运行题:程序将多次运行,每次使用不同的输入。
    • 提交答案题:无需提交程序,仅需直接提交最终答案。

提交

  1. 半决赛将在 QOJ 举办,该平台也是 Universal Cup 在线赛所使用的系统。
  2. 允许提交使用 C、C++、D、Go、Haskell、Java、Kotlin、Pascal、Python 3 或 Rust 编写的解法。可能会提供仅输出题,在这种情况下只需提交输出文件而非源代码。
  3. 详细的语言规范请参考 TechNote 文档(将在稍后发布)。
  4. 每次提交的判定结果为通过或未通过。不提供部分分或测试点结果预览。
  5. 未通过的提交将标记为以下之一:

    • 编译错误(Compilation Error)
    • 运行时错误(RE)
    • 超时(TL)
    • 超内存(ML)
    • 答案错误(WA)
    • 判题失败(Judgement Failed,表示判题系统故障)
  6. 如果收到 Judgement Failed 判定,请不要重复提交,裁判组与 SC 将处理此问题。

评分、排名与奖项

  1. 队伍按解决题目的数量排名。
  2. 若解决题目数量相同,则首先按照罚时排名;若仍相同,则按以下顺序使用平分判定:
    • 比较最后一次 AC 时间(精确到毫秒),时间更早的队伍排名更高。未解出任何题目的队伍该时间为 00:00:00.000
    • 若仍然相同,则比较第三届 Universal Cup 线上赛的 Rating。
    • 若仍然相同,则一场包含一道附加赛题的比赛将决出胜负。
    • 若仍然相同,则由 SC 决定排名。
  3. 罚时为已解出的每题耗时与该题罚分之和。
  4. 题目耗时为比赛开始到该题第一次 AC提交的时间(以分钟计)。
  5. 该题罚分为该题第一次 AC前的非编译错误未通过提交次数 × 20 分钟。
  6. 未解出的题目不计算耗时。
  7. 排行榜将在比赛进行 4 小时后封榜,之后的提交将显示为“待定”。

比赛环境

  1. 选手可打印题面或使用自己的电脑及电子设备阅读题面。
  2. 比赛期间,每位队员可同时使用自己的电脑,但同一时刻仅允许一台电脑进行编程
  3. 队员不得同时使用多台电子设备进行编程或使用其他解题软件。

    • 包括但不限于编写解题代码、使用科学计算软件或运行自编程序进行长时间计算。
  4. 不得提交恶意代码,包括攻击评测机或恶意占用系统资源。
  5. 允许浏览互联网查阅资料,但禁止与队伍外任何人交流。严禁在互联网上发布任何解题资料,包括思路、代码或辅助程序。

监考录屏

  1. 所有希望通过半决赛晋级总决赛的队伍必须提供所有队员的电脑屏幕的屏幕录制。未提供有效录制可能导致丧失总决赛资格。
  2. 录制须从比赛开始前至比赛结束后全程覆盖。
  3. 必须录制所有队员的所有电脑屏幕。
  4. 必须录制完整桌面,浏览器或编辑器单独录制无效。
  5. 无需录制人脸、桌面或平板的草稿,仅需录屏。
  6. 视频需在赛后 48 小时内通过以下任一方式上传:

    1. 上传至 YouTube(可设置为非公开
    2. 上传至 bilibili
    3. 上传至以下网盘之一:

      • Google Drive、Dropbox、Yandex Disk、Mediafire、MEGA、百度网盘
  7. 视频最低要求:

    • 分辨率:720×480 或更高
    • 帧率:≥ 10 FPS
  8. 如无法在 48 小时内上传,请发送邮件至 [email protected],并附录制文件的 SHA-1 哈希值说明情况。
  9. 若在录制过程中遇到技术问题,请发送邮件至 [email protected]

问答:

  1. 为什么要录屏?这也太魔怔了。
    • 答:提交录屏仅用于验证你的队伍在半决赛参赛的成绩。如有委员会或其他选手提出严重质疑,我们需要材料证明您遵守了相关规则,尤其是有关三人一机的规则。
  2. 必须全程录制吗?如果我的电脑爆了,录屏文件不完整或损坏该咋办。
    • 答:录屏的唯一目的在于证明您未违规。如果你的系统崩溃或中途退出,你可以提交不完整或是缺少部分片段的视频,只要该设备在缺失时段未用于解题即可。简单来说,我们只需要验证你所提交的每一份代码的来源。
  3. 我的电脑太烂了,录屏会影响比赛体验怎么办?
    • 答:最低要求非常宽松:720×480、至少 10 FPS,对任何现代电脑几乎无影响。如果这仍然无法录制,你可以使用手机或者摄像机拍摄显示器来替代录屏。
  4. 我担心隐私泄露,你们会如何使用录屏?
    • 答:录屏仅用于在极少数的情况下验证你的成绩。如果没有问题发生,我们不会查看任何你所提交的录屏信息。即使我们需要查看,我们也不会向其他人员分享录屏。
  5. 我可以公开发布我们的录屏吗?
    • 答:可以,自愿。

申诉

  1. 队伍可对题目错误、提交判定或其他比赛决定提出申诉。
  2. 申诉必须仅用英文书写。
  3. 申诉需在比赛结束 24 小时内发送至 [email protected]
  4. 裁判将对申诉作出决定,可能会更改比赛期间的判定结果。裁判长将代表裁判做出裁决。
  5. 若对裁判长的裁决仍不满意,可向 Universal Cup 科学委员会(SC)提交最终申诉。SC 主席的决定为最终裁决。

The 3rd Universal Cup Semifinals --- Competition Rules

2025-08-12 21:06:35 By Qingyu

The 3rd Universal Cup Semifinals Rules

Last update: Aug 11, 2025

Issued by the Scientific Committee (SC) and Technical Committee (TC)

本文档的中文版本可以在这里找到。

The Universal Cup is an organization aiming at serving the competitive programming community, dedicated to provide high quality training resources and host onsite global events. The 3rd Universal Cup Semifinals (hereinafter “Semifinals”) is a qualification contest for The 3rd Universal Cup Finals (hereinafter “Finals”), which is a part of our Finals Qualifications

The following document defines the rules of the semifinals. You must read and follow the following rules. Violating the rules might cause you disqualified from the Semifinals and your future finals qualifications.

Please note! We introduced a desktop capture requirements for all teams who wishes to qualify to the Finals thourgh Semifinals. Raed “Proctoring Recordings” section carefully for more details!

Contest Format

  1. The competition will last five hours. In case of unforeseen circumstances, the chief judge has the authority to modify the contest duration. If any changes occur regarding the contest format or duration, participants will be notified in a timely and uniform manner.
  2. There will be at least ten (10), but no more than fifteen (15) problems in the contest.
  3. Teams may submit claims regarding potential mistakes in a problem via a clarification request. Clarification requests must be written in English only.
  4. Clarifications may be issued during the competition. These clarifications may include explanations of problem statements, additional details, extra examples, or modifications to a problem (including additions, removals, or changes).
  5. All clarifications will be provided in English only, in the contest index page of the contest platform.

Problems

  1. All problem statements will be provided in English only.
  2. Teams may use dictionaries or online translation tools to translate the statements into other languages. No official translations will be provided.
  3. No partial scores will be awarded for any problem.
  4. The types of problems in the competition include:
    • Standard I/O problem: Your program must read input from the standard input and write output to the standard output.
    • Interactive problem: The program interacts with an interactor through standard I/O.
    • Multiple-Run Problem: The program will be executed multiple times, each with a different input.
    • Output-Only Problem: Teams do not submit a program but instead submit the final answers directly.

Submissions

  1. The Semifinals will be hosted on QOJ, which is also the contest system we used in the Online stages of the Universal Cup.
  2. You are allowed to submit solutions implemented in C, C++, D, Go, Haskell, Java, Kotlin, Pascal, Python 3, or Rust. Output-only tasks might be provided. In such case, you only need to submit your output file instead of a solution source code.
  3. The detailed language specifications should be referred to in the TechNote document (will be published later).
  4. Each submission is judged as accepted or rejected. No partial scores or test previews will be given to the teams.
  5. Rejected runs will be marked with one of the following:
    • Compilation Error
    • Runtime Error (RE)
    • Time Limit Exceeded (TL)
    • Memory Limit Exceeded (TL)
    • Wrong Answer (WA)
    • Judgement Failed, which means our judge is broken and not functioning properly.
  6. If you receive a Judgement Failed verdict, do not re-submit. Judges and the SC will handle the issue.

Scoring, Ranking, and Awarding

  1. Teams are ranked according to the most problems solved.
  2. Teams who solve the same number of problems are ranked first by the least penalty, with the following tie-breakers in order:
    • the tied teams will be ranked according to their last AC time, in milliseconds. Teams has the earlier last AC time will be ranked higher. Teams did not solve any problems will have the last AC time as 00:00:00.000.
    • if there is still a tie, the tied teams will be ranked according to their ratings on The 3rd Universal Cup.
    • if there is still a tie, the tied teams will be ranked according to an additional play-off task.
    • if there is still a tie, SC will decide the ranking of the tied teams.
  3. The penalty is the sum of the time consumed for each problem solved plus the penalty in that problem.
  4. The time consumed for a solved problem is the time elapsed from the beginning of the contest to the submission of the first accepted submission, in minutes.
  5. The penalty in a problem is twenty (20) minutes times the number of non-accepted submissions before the first accepted submission, excluding the ones with a compilation error verdict.
  6. There is no time consumed for a problem that is not solved.
  7. The leaderboard will be frozen 4 hours after the contest starts, and the results submitted after 4 hours will be shown as pending on the leaderboard.

Contest Environment

  1. Contestants may print out problem statements or use their own computers and electronic devices to read them during the competition.
  2. During the contest, each team member can use their own computer at the same time, but only one computer is allowed to be used to write code at the same moment.
  3. Team members are not permitted to use their own electronic devices simultaneously for coding or employing other problem-solving applications.
    • This includes, but is not limited to, writing code for solving problems, using scientific computing software for calculations, or running self-written programs for extended calculations.
  4. Contestants should not submit malicious codes, including but not limited to attacks on the evaluation machine and malicious occupation of evaluation system resources.
  5. Teams are allowed to browse the Internet to access any materials, but prohibited from communicating with anyone outside their team during the contest. The distribution of any problem-solving materials, including ideas, codes, or auxiliary programs, on the Internet is strictly forbidden.

Proctoring Recordings

  1. All teams seeking to qualify for the Finals via the Semifinals must provide screen recordings of all workstations (i.e. computers) used by all team members. Failure to provide a valid recording might cause you to be disqualified from competing for Finals quotas.
  2. Recordings must capture the full desktop from before the contest begins until after it ends.
  3. You must record all the computers for all team members.
  4. Recording software must capture all on-screen activity; browser-only or editor-only recordings are invalid.
  5. You do not need to record faces, desks, or scratch work on tablets. Only screen-recording is required.
  6. Videos must be uploaded within 48 hours after the contest ends via one of the following:
    1. Upload videos to your YouTube Channel; in case if you do not wish others see your recordings, you can upload them as unlisted
    2. Upload videos to your bilibili Channel
    3. Upload your videos to one of the following Netdisk services:
      • Google Drive, Dropbox, Yandex Disk, Mediafire, MEGA, Baidu Netdisk
  7. Your video must satisfy the following minimum recording quality:
    • Resolution: 720×480 or higher
    • Frame rate: ≥ 10 FPS
  8. If you cannot upload within 48 hours, email [email protected] with your situation and the SHA-1 hash of your recordings.
  9. In case if you meet any technical difficulties on preparing your recordings, please send an email to [email protected]

Q&A:

  1. What is the purpose for introducing a recording? It is very annoying.
    • A: The recording is only used to validate your performance in the Semifinals. If serious concerns are raised by the committee or other contestants, we need some materials to prove you are following our rules, especially the usage of only one computer for solving.
  2. Do I have to provide a full recording? What if my system crashed and I lost some parts of the videos?
    • A: The only purpose of the recordings is to prove that you are not violating the rules. In case your system crashes or your participation is stopped for unforeseen reasons, you can have an incomplete recording without those moments, as long as you are not using that device for solving purposes. We only monitor how your team produced all the solutions.
  3. My computer is very slow. Recording the screen while solving problems will make me intolerable for participating in the contest.
    • A: We set a very generous recording minimum requirement: 720×480p for at least 10 frames per second. This should not affect performance for any modern computer system. If you still cannot record the screen properly, you can use another camera to record your computer monitor as an alternative solution.
  4. I have serious privacy concerns. How will you use my recordings?
    • A: The recording will only be used for validation purposes. If no concerns are found for your participation, we will not view your recordings at all. In either scenario, the recordings will not be shared with anyone else.
  5. Are we allowed to publish our recording publicly?
    • A: You are free to publish them.

Appeal

  1. Teams may submit an appeal regarding potential mistakes in any problems, verdicts of the submissions, or other contest decisions.
  2. Appeals must be written in English only.
  3. Appeals should be sent to [email protected] within 24 hours after the end of the contest session.
  4. Judges will give a decision to an appeal, which might change a verdict given during the contest.
  5. If you are still not satisfied with the results given by the judges, you may file a final appeal with the Universal Cup SC. The decision of the Chair of the SC shall be final.

Qualification Rule of The 3rd Universal Cup Finals

2025-08-02 04:42:45 By Qingyu

We are excited to announce The 3rd Universal Cup Finals, the play-off event for the third season of the Universal Cup. This document outlines the rules and procedures for qualification.

Read more...

The 2025 ICPC World Finals Baku Prediction Game (Rules Updated for WF contest)

2025-07-25 14:11:22 By Qingyu

World Finals 2025 Crystal Ball 🔮 Contest

According to tradition, we are going to host the World Finals 2025 Prediction Game.

Before the start of the contest session of The 49th ICPC World Finals, you can submit your predictions for the top 12 contestants in the upcoming competition.

You can make your predictions at: https://qoj.ac/voting_game/vote?competition=wf2025

The deadline to update your prediction is September 4th, 2025 at 3 P.M. (UTC +8). That is, the start of the contest session.

Rules:

You need to predict the 1st to 12th place winners. Each team can only be nominated once.

  1. For each contestant you nominate who finishes in the top 12, let $R$ be the actual rank of the contestant and $r$ be the rank you predicted, you earn $2 + (12 - |R-r|)$ points.
    • You receive additional 2 points if you predicted the medal of that team correctly.
    • You receive additional 2 points if you predicted the place of that team correctly. That is, you will get $2 + (12 - 0) + 2 + 2 = 18$ points for each exact prediction.
  2. For each contestant you nominate who finishes in the top 24 but not top 12, you earn 2 points.
  3. If you leave a rank blank (i.e., choose not to make a prediction for that rank), you receive 1 point for that empty slot.

Ranking:

Participants in the Prophet Game will be ranked first by their final score, and then by the time of last edit (earlier edits rank higher in case of a tie).

We will post the final leaderboard after the contest is over.

Famous Contest Series on QOJ

2025-07-23 11:39:06 By Qingyu

There are many well-known contest series created by individual author(s), such as the legendary ASC (Andrew Stankevich Contest) and the Yuhao Du Contest. These contests are renowned for their high-quality problems, and many participants enjoy the challenge of solving every problem in a series.

Since I couldn't find a suitable place to categorize and organize this list, I decided to write this blog instead. I'll continue to update it as new contests are released. Please also DM me if you wish to include your contests here!

Read more...

Updates on the Problem Set

2025-07-07 01:13:22 By Qingyu

AC Rating

题目权重

为了反应一道题目的权重(其主要取决于题目的思考难度与实现难度),我们为每道题目赋予一个难度值 $D$,其为 $0 \sim 10$ 之间的整数。数值越大,代表该题目的难度越难。

由于难度的评价不可避免的带有评价人的主观理解,我们不可能严格定义出每个难度的范围。被评为同样难度的两道题目,擅长不同领域的选手尝试时的感受可能大相径庭。同时,一些题目的难度可能主要体现在思考难度,而另一些题目的难度则可能主要体现在实现难度。

在评价具有部分分的题目时,我们主要根据题目的通过难度进行评分,而部分分的获取难度仅作权重很低的参考。因此,一道题目可能会很轻易得到接近满分,但获得满分非常困难 —— 在这种情况下,这道题目的难度相对会很高。因此,在具有部分分的情况下,题目的难度并不能够反映选手的得分率。

大体上:

  • 难度 0 :最简单的竞技题目,即使是没有任何算法竞赛经历的人士,在具备使用任意一种编程语言编写程序的能力下便可轻松通过,大致可对应 Codeforces 难度 800 ~ 1000 的题目,TopCoder SRM Div. 2 的 250 分题目,或是 AtCoder Beginner Contest 的第一道题目。
  • 难度 1:需要选手具有一定时间的程序设计经验,或者需要使用初步的数学与简单的算法设计能力。不具备算法竞赛经历的选手仍可解决这些题目,但可能需要消耗一定的时间。大致可对应 Codeforces 难度 1000 ~ 1600 的题目,亚洲区域赛或 NERC 区域赛的签到题的难度,以及 AtCoder Beginner Contest 的前四道题目。
  • 难度 2:具有一定竞技门槛的题目。题目考查了一些算法竞赛中常用的 trick,或者具备一定的思维难度。这一类题目可被定义为最低一档的「竞赛题」,未经训练的程序设计者在解决时会遇到许多困难。大致可对应 Codeforces 难度 1500 ~ 1900 的题目,亚洲区域赛或 NERC 区域赛区分铜牌队伍的题目的难度,以及 USACO Silver 难度的题目。
  • 难度 3:大致可对应 Codeforces 难度 1800 ~ 2400 的题目,ICPC 亚洲区域赛中区分铜牌 ~ 银牌队伍的题目的难度,以及通常 USACO 中 Gold 难度的题目。
  • 难度 4:大致可对应 Codeforces 难度 2300 ~ 2800 的题目,USACO Gold ~ Platinum 题目,ICPC 亚洲区域赛中区分银牌 ~ 金牌队伍的题目,以及国际信息学奥林匹克竞赛(IOI)大多数年份中难度最低一档的题目。在国际信息学奥林匹克竞赛(IOI)中通过的选手数大约在 100,而在 Universal Cup 中出现时通常的 AC 数为 70 ~ 100+。
  • 难度 5:大致可对应 Codeforces 难度 2600 ~ 3200 的题目,USACO Platinum 题目的难度,ICPC 亚洲区域赛中区分靠前金牌队伍甚至出线队伍区分度题目。在国际信息学奥林匹克竞赛(IOI)中通过的选手数通常在 50,在 ICPC World Finals 中出现时通常的 AC 数为 10 ~ 30,在 Universal Cup 中出现时通常的 AC 数为 20 ~ 50。
  • 难度 6“我是咋克,这题也太简单了,我一眼秒了。” 大致可对应 Codeforces 难度 3000 ~ 3500 的题目,ICPC 区域赛中针对前若干名队伍所区分的题目,ICPC 全球总决赛(World Finals)针对奖牌区队伍所区分的题目,以及国际信息学奥林匹克竞赛(IOI)中取得金牌的区分度所对应的题目。在国际信息学奥林匹克竞赛(IOI)中通过的选手数通常在 10 ~ 20,在 ICPC World Finals 中出现时通常的 AC 数为 3 ~ 10,在 Universal Cup 中出现时通常的 AC 数为 10 ~ 30。
  • 难度 7“我是咋克,这题也没啥难度啊,想一想就会做了。”大致可对应 Codeforces 难度 3500+ 的题目,ICPC 比赛中针对冠军队伍所区分的题目,以及国际信息学奥林匹克竞赛(IOI)中区分最顶尖的选手所对应的题目。在国际信息学奥林匹克竞赛(IOI)中通过的选手数通常在 0 ~ 5,在 ICPC World Finals 中出现时通常的 AC 数为 0 ~ 3,在 Universal Cup 中出现时通常的 AC 数为 1 ~ 10。
  • 难度 8“我是咋克,感觉这题,有难度[咦]。是不是这么做的来着[可怜]。很难啊!!”国际信息学奥林匹克竞赛(IOI)中难度最高的一档题目,不太可能在 Codeforces 或 AtCoder 等短时间多题数的比赛中有选手解出。即使在大多数比赛,也几乎没有队伍或选手通过的题目。只有最强的选手有机会在赛时通过这些题目,且需要消耗可观的时间。在国际信息学奥林匹克竞赛(IOI)中通过的选手数通常在 0 ~ 1·,在 ICPC World Finals 中出现时通常的 AC 数为 0,在 Universal Cup 中出现时通常的 AC 数为 0 ~ 2。
  • 难度 9“我是咋克,看着不会做,我想想。”难度极高的题目,在 IOI 或 ICPC 中不可能会被任何选手解出。即便在 AtCoder World Tour Finals、Meta Hacker Cup、Universal Cup 等时间较长且具有许多高水平算法竞赛选手的赛场上,有经验的选手经过长时间也可能会遇到很多阻碍,几乎不具有通过的可能性。在 Universal Cup 中出现时通常的 AC 数为 0。
  • 难度 10“我是咋克,这都能做吗,这么牛。”没有任何机会的题目。题目的难度极高,在任何比赛中都不会有选手能够在数小时内解出此题。在 Universal Cup 中出现时通常的 AC 数为 0。

The 3rd Universal Cup Semifinals : Call for Tasks

2025-06-05 17:09:46 By Qingyu

On behalf of the Universal Cup, I am delighted to invite you to submit your task proposals for The 3rd Universal Cup Semifinals Call for Tasks. The 3rd Universal Cup Semifinals will serve as a qualifying contest to select the teams that will advance to the 3rd Universal Cup Finals, which is expected to be an onsite event in the beginning of 2026. The Semifinals is tentatively scheduled for the end of August, 2025. We anticipate selecting 10-15 high-quality tasks to create a contest experience comparable to the 2nd Universal Cup Finals.

We welcome task submissions across a wide range of difficulty levels and strongly encourage innovative problem ideas. While we cannot guarantee acceptance rates, please be aware that topics such as data structures and combinatorial counting are typically highly competitive and within much lower acceptance rates. We encourage you to consider exploring less common problem types.

If you wish to submit a problem, please send your proposal via email to [email protected]. Your submission should include a task statement, a brief editorial, and a list of conflicting individuals (i.e., anyone who knows any parts of the problem). Test data and standard solutions are not required unless the problem is accepted. For each problem we used, a compensation of 2500 CNY (or 300 USD) will be provided. The submission deadline is July 15, 2025.

If you have any questions or would like to receive updates regarding this event, please feel free to contact us. We eagerly look forward to your creative problem submissions and hope to see you at the 3rd Universal Cup Semifinals!


The 3rd Universal Cup Semifinals - Scientific Committee: Qingyu, jiangly, bulijiojiodibuliduo, quailty

Upgrade of QOJ Judging Server

2025-06-02 15:48:38 By Qingyu

On June 2, 2025, QOJ upgraded its judging server to enhance performance and reliability.

The server's CPU was upgraded from Intel(R) Xeon(R) Platinum 8370C to Intel(R) Xeon(R) Platinum 8570.

To evaluate the impact of this upgrade, we sampled 20 randomly selected accepted submissions (with a runtime of at least 1 second) and compared their performance on the old and new servers.

Submission ID Old Runtime New Runtime Difference
1085643 1016 ms 731 ms -28.05%
1085501 1285 ms 1008 ms -21.56%
1085496 1849 ms 1600 ms -13.47%
1085404 1584 ms 1351ms -14.71%
1085109 2059ms 1320ms -35.89%
1080028 6903ms 6339ms -8.17%
1079903 1369ms 1053ms -23.08%
1079641 1129ms 1064ms -5.76%
1079530 3079ms 2770ms -10.04%
1078786 1353ms 1113ms -17.74%
1078745 2936ms 2641ms -10.05%
1078744 8694ms 5578ms -35.84%
1078736 1898ms 1421ms -25.13%
1078699 1012ms 907ms -10.38%
1078614 2026ms 1708ms -15.70%
1078156 5551ms 4553ms -17.98%
1077728 1663ms 1335ms -19.72%
1077447 3691ms 3542ms -4.04%
1077354 1446ms 1115ms -22.90%
1077195 1616ms 831ms -48.58%

Average: -19.44%; Weighted Average: -19.52%

We will not rejudge previously submitted solutions. As a result, older submissions displayed on the problem statistics page may appear disadvantaged . If you would like to see the updated performance of your past submissions, we recommend resubmitting them.

Additionally, since the new judging server is significantly faster, we may revise the time limits of certain problems—especially if the upgrade inadvertently caused unintended solutions to pass.

MIT

2025-03-16 00:17:38 By Qingyu
共 72 篇博客
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8