会员
周边
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Loading
heffo_hard的博客
博客园
首页
新随笔
联系
订阅
管理
[置顶]
OI学习笔记
摘要: 前言 本文为一名Oier的真实学习笔记,如果对文中有问题或有意见,欢迎联系我 几个做题的小技巧: 通过挖掘题目的特殊性质,找到分析问题的切入点 更换统计答案的方式 特殊性质优化 模型等效替换 深度优先搜索 (depth first search,dfs) 适用问题:能把待求解的问题分成不太多的步骤,
阅读全文
posted @ 2026-04-22 16:57 heffo_hard
阅读(116)
评论(2)
推荐(1)
2026年8月4日
题解:B4563 [山东省小学组体验营 2026] 星际密信
摘要: 题目大意 给出一个字符串,对字符串进行加密,方式如下: 对于每个英文字母(大写),将它替换为字母表中向后移动 \(k\) 位的字母(循环)。 对于数字字符,保持不变。 容易想到对于每个字符考虑是否是英文字符,如果是就对字符进行操作,不是就跳过。 实现细节 首先考虑 \(k\) 为负数的情况,只需要加
阅读全文
posted @ 2026-08-04 18:50 heffo_hard
阅读(15)
评论(0)
推荐(0)
2026年8月1日
题解:P13635 [NWRRC 2021] Halfway There
摘要: 注意到 \(2\le n\le10^{18}\),所以暴力枚举肯定不行。 注意到一个性质,\(\gcd(n,m)=\gcd(n,n-m)\)(\(n\ge m\))。 证明 如果有 \(d \mid n\),\(d \mid m\),那么设 \(n=x\times d\),\(m=y\times d
阅读全文
posted @ 2026-08-01 19:53 heffo_hard
阅读(13)
评论(0)
推荐(0)
2026年7月11日
题解:P17070 [ICPC 2017 Shenyang R] Heron and His Triangle
摘要: 前置知识 佩尔方程 题目大意 一个三角形的三条边长分别为三个连续整数 \(t-1\)、\(t\)、\(t+1\),且其面积为整数,对于给定的 \(n\),你需要找出满足 \(t \ge n\) 的最小 \(t\) 所对应的且其面积为整数的三角形。 思路 先根据海伦公式求出这个三角形的面积: \[S=
阅读全文
posted @ 2026-07-11 22:38 heffo_hard
阅读(13)
评论(0)
推荐(0)
题解:P9423 [蓝桥杯 2023 国 B] 数三角
摘要: 题目大意 给出 \(n\) 个点的坐标,求其中能围成等腰三角形的三个点有几组。 思路 发现 \(n\) 的范围不大,考虑先预处理出每两个点的距离,然后在找出可能成为等腰三角形的点的组数,最后去除多余情况。 实现细节 :::info[两点之间的距离公式] 点 \(a(x_1,y_1)\) 和点 \(b
阅读全文
posted @ 2026-07-11 22:38 heffo_hard
阅读(7)
评论(0)
推荐(0)
2026年6月30日
题解:P16974 [NWERC 2017] 首领战 / Boss Battle
摘要: 发现在 \(n\le 3\) 时只需要 \(1\) 颗炸弹就可以全部覆盖,否则最坏情况下,需要跑一圈,之后发现方向不对转换方向,一共扔 \(n-2\) 颗炸弹才能覆盖,代码如下: #include<bits/stdc++.h> using namespace std; int n; static i
阅读全文
posted @ 2026-06-30 23:03 heffo_hard
阅读(8)
评论(0)
推荐(0)
题解:P17015 [GESP202606 七级] 消消乐
摘要: 区间 dp 水题。 定义 \(f_{i,j}\) 表示删除 \(a_i\) 到 \(a_j\) 的所有元素的最大得分,容易得到状态转移方程: \[f_{i,j}=f_{i,k-1}+f_{k+1,j}+a_{i-1}+a_{j+1} \](先删除 \(a_i\) 到 \(a_{k-1}\),再删除
阅读全文
posted @ 2026-06-30 23:03 heffo_hard
阅读(31)
评论(0)
推荐(0)
2026年6月26日
四边形不等式学习笔记
摘要: 在区间 dp 中,经常会出现这样的转移方程: \[dp_(i,j) = \begin{cases} \min_{i\le k<j}({dp_{i,k},dp_{k+1,j}+w(i,j)}) & i<j\\ 0 & i=j \\ \infty & i>j\\ \end{cases}\]定义 此时如果
阅读全文
posted @ 2026-06-26 07:26 heffo_hard
阅读(18)
评论(0)
推荐(0)
题解:P16941 「LAOI-18」Locus
摘要: 容易发现最优解法一定是把一个边分割。 于是想分割哪个边? 题目中给的是两个互不为倍数的点连一条边,所以只需要找倍数最多的点的个数即可。 容易知道,一个数越小,那么它在一个固定区间中的倍数最多,因此我们只需要把 \(3\) 单独分为一个子集即可。 不与 \(3\) 连点的节点数字就是 \(3\) 的倍
阅读全文
posted @ 2026-06-26 07:24 heffo_hard
阅读(11)
评论(0)
推荐(0)
2026年6月13日
题解:P16865 [GKS 2021 #H] Transform the String
摘要: 暴力题。 题目大意 给出 \(T\) 组数据,对于每组数据,给出两个字符串 \(S\),\(F\),求至少进行多少次操作,可以使 \(S\) 中的每个字符都是 \(F\) 中的字符。 思路 可以先使用一个 bool 数组把 \(F\) 中的字符都记录下来。然后对于 \(S\) 中的每个字符,都计算它
阅读全文
posted @ 2026-06-13 23:00 heffo_hard
阅读(7)
评论(0)
推荐(0)
题解:P16922 [JLCPC 2026] 顺子
摘要: 水题。 首先是输入,可以用字符串存储,如果发现是数字就调用 stoi() 函数转化成数字,然后放到一个 bool 数组里,注意 A,J,Q,K 需要特判,这里的 A 可以处理成 \(14\)。 然后打擂刷新答案即可。 #include <bits/stdc++.h> #define ll long
阅读全文
posted @ 2026-06-13 23:00 heffo_hard
阅读(12)
评论(0)
推荐(0)
下一页
公告