2025 集训队作业 选做

难度:gray < green < blue < orange < red

QOJ10003: Decorative Birds

\(f_{i,j}\) 表示时刻 \(i\),当前最高的是 \(j\)

每次删除一条线段时考虑要不要击落,做 \(j\) 减小的转移。

加入一条线段时,做 \(j\) 增大的转移。

QOJ10688: AmazingTalker

先把不劣的边连上,然后会有一些空点需要向非空点连边,贪心连一下即可。

QOJ10693: Flappy Bird

有个O(n)的原题,摆了

QOJ10697 Judge Error

给定一张n个点的无向简单图,问其是否有恰好一组完美匹配。如果是,输出该完美匹配方案。

完美匹配必包含割边,每次找到所有割边判断能否删除

找割边可以 n^2/w 一次,总共 n^3/w

QOJ8185. Emerging Tree

每次加边然后合并一下两个序列

QOJ10036 Building Marble Tracks

时间分块,分成 \(\sqrt n\) 块,块内暴力,块外扫描线 x 维护 y 的相对顺序。

\(O(n\sqrt n \log n)\)

QOJ1874- Goldberg Machine 2

QOJ1876- MIPT: Connecting People

QOJ1884- Mission Impossible: Grand Theft Auto

QOJ 11623. Construct Point

每次把 \((x,y) \to (x,y+ax+b)\)

可以 Euclid 方式把一条边变到 x 轴上。

//然后取一个点,把坐标变换回去即可

QOJ10542 Protecting Kingdom

QOJ10545 String Rank

QOJ 10045 Permutation Recovery

建图,问题转化为,选 \(k\) 个排列,使得 \((i,p_i),(p_i,i)\) 覆盖整个图。

考虑每次找一个排列删掉。

//可以先给原图定向,然后每次找一组匹配。这步可以调用二分图染色。

QOJ1832 Crab’s Cannon

QOJ#10082. Adrian the Wonder Child

QOJ10083 Single-Crossing

如果确定第一个排列,那么就做完了。

如果随便找一个 pair \((x,y)\),可以根据 \((x,y)\) 的顺序把所有排列分成前后两半。

每次分成两半,然后递归小的一边,就能找到某一个排列的位置。

QOJ10081 Split the Picture

QOJ2206 Decomposition

just Runs.

QOJ2207 Edit

QOJ2212 Jump Jump Jump

QOJ 2555 Two Bullets

QOJ 4881 Hard Problem

QOJ12332 K-Triangles

QOJ12329 Humongous String

QOJ887 Final Exam

QOJ8559. k-coloring

QOJ12305 Permutasino

QOJ12302 Unfair Card Deck

QOJ #8012 Jumping Lights

QOJ 10871 Joy of Sushi

QOJ 10872 Kid's game

posted @ 2025-10-01 16:47  Rainbow_qwq  阅读(129)  评论(0)    收藏  举报