2025.2 模拟赛日志

2025.2 模拟赛日志

字符串问题之有趣的字符串题目1-范斯喆(day18)(20250203)

笔记 2025.2.6:字符串杂题选讲-范斯喆 - caijianhong - 博客园

还有个基本子串结构选讲,我决定放弃。

图论选讲{1,2}-张宇卓(day19)(20250204)

已学习,在写了在写了

NOI2025省选模拟赛7(day20)(20250207)

100+100+100=300

更新了 【模板】快速莫比乌斯/沃尔什变换 (FMT/FWT) - caijianhong - 博客园

DP选讲{1,2}-汪煦康(day21)(20250208)

已学习,在写了在写了

AtCoder Regular Contest 192 (Div. 2)(20250209)

  • [A ARC Arc] 相当于构造题,找结论
  • [B Fennec VS. Snuke 2] 博弈,打表(重要的想法是数字 x 可以直接看作 2xmod2 而不影响任何事情)
  • [C Range Sums 2] 简单交互
  • [D Fraction Line] 数论,dp
  • *[E Snuke's Kyoto Trip]

400(+1)+600+600+0+0=1600(+1)。半个小时过一题,最后 D 题整了个搞笑的错误没搞出来,结论是速度有待提高。另外怎么前四题的难度都相对这么低???

数据结构选讲{1,2,3}-李雷思问(day22)(20250210)

已学习,在写了在写了

不写了不写了,来写题解了

笔记 2025.2.10:数据结构选讲-李雷思问 - caijianhong - 博客园

树上技术总结 - caijianhong - 博客园

NOI2025省选模拟赛8(day23)(20250213)

15(45)+70+15=100(130)

有两个问题是问题:1. 一条路走到黑;2. 没有想法的时候会陷入停滞状态。另外两个问题可能是问题:1. 做简单题有一点慢;2. 常数有一点大(主动选择常数较大的写法)。

mint f[2][510][510][2];
auto now = f[i & 1], pre = f[(i - 1) & 1];
// 这样写类型是 mint (*&) [510][510][2],是指针,sizeof 结果是指针
auto &now = f[i & 1], &pre = f[(i - 1) & 1];
// 这样写类型是 mint (&) [510][510][2],是引用,和 f[i & 1] 的类型一致,sizeof 结果是真实大小
auto &&now = f[i & 1], &&pre = f[(i - 1) & 1];
// 这样写类型是 mint (&) [510][510][2],是引用,和 f[i & 1] 的类型一致,sizeof 结果是真实大小

2025/02/14省选模拟(20250214)

60+0+0=60

更新了【笔记】图论:网络流二分图理论 - caijianhong - 博客园

Public Round #15(20250215)

  • [A 最小表示法 / QOJ1855] 计数,最小表示法,数论。另外谴责一下这题在 PR #11 里也有。
  • [B 二叉搜索树 / QOJ971] 二叉搜索树转笛卡尔树、陈亮舟线段树、线段树合并
  • *[C 黑白球染色 / QOJ9438] FFT 优化树上背包或 FWT

97(100)+35(72)+18(42)=150(214)。T1 又没判 n=1。T2 调不出来。T3 自测的时候没卡满,以为能过到 42 分。

如果 f(x)=g(x+1) 那么 fi=ji(ji)gj

如果 f(x)=(g(x1)+g(x+1))/2 那么 fi=ji,ji(mod2)(ji)gj

杂题选讲-黄建恒{1,2}(day25)(20250217)

已学习,在写了在写了

杂题选讲-赵晟昊(正睿)(20250218)

已学习一半,其中 5 题之前没有做过。已经写了 3 题。

Yuhao Du Contest ???(正睿)(20250219)

0(43)+21+25(38)=46(102)

2025/02/20省选模拟 & NOI2025省选模拟赛9(day24)(20250220)

100+50+52=202

杂题选讲-黄建恒(正睿)(20250221)

已学习,发现有很多题目写过。

NOISG2025 Prelim(20250222)

  • [A Train Or Bus] 简单题
  • [B Ducks And Buttons] 简单题
  • [C Snacks] 简单的均摊数据结构
  • [D Itinerary] 树上二次换根,大分讨
  • E Lasers 2 区间并的 dp,线段树优化 dp,分讨

100+100+100+100+100=500

GZOI2025省选模拟赛(十五)(20250223)

0(100)+50(40)+0(100)=50(240)

发布了 在 OI 范围内寻找单位根 - caijianhong - 博客园

NOI2025省选模拟赛15(day32)(20250225)

100+5+25(60)=130(175)

DIT-DIF 优化卷积:再探 FFT - DIT 与 DIF,另种推导和优化 – Charles Wu的博客在我的博客的备份

NOI2025省选模拟赛16(day34)(20250227)

100+100+100=300

一个初始化后只删除的 std::set 可以被二分 + 并查集代替。

struct ds {
  vector<int> vec, fa;
  int find(int x) { return x == fa[x] ? x : fa[x] = find(fa[x]); }
  template <class Func> void split(int ql, int qr, Func&& func) {
    if (fa.empty()) {
      fa.resize(vec.size() + 1); // 注意 +1
      iota(fa.begin(), fa.end(), 0);
    }
    int p = lower_bound(vec.begin(), vec.end(), ql) - vec.begin();
    while ((p = find(p)) < (int)vec.size() && vec[p] <= qr) {
      func(vec[p]);
      fa[p] = p + 1;
    }
  }
};

二分的部分也可以写 partition_point(vec.begin(), vec.end(), [&](auto e) { return e < ql; }),返回第一个不满足条件的位置。

GDOI2025 Day 1(20250301)

  • ?[A 幸运数字]
  • *[B 追忆]
  • *[C 图排列]

?(100)+?(32)+?(8)=?(140)

GDOI2025 Day 2(20250302)

  • ?[A 推箱子]
  • *[B 岁月]
  • *[C 封印]

?(100)+?(40)+?(8)=?(148)

posted @   caijianhong  阅读(221)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示