ICode9

精准搜索请尝试: 精确搜索
  • 2022.9.7 Noip 模拟2022-09-11 12:00:08

    Noip 模拟 目录Noip 模拟\(\to \text{比赛 link} \leftarrow\)\(\to \text{题面+题解 link} \leftarrow\)报数随机单调栈后缀数组 \(\to \text{比赛 link} \leftarrow\) \(\to \text{题面+题解 link} \leftarrow\) 报数 线性筛+前缀和 #include<bits/stdc++.h> using namespace st

  • 各种实用模板或指令2022-09-10 03:00:41

    1. 指令 - 网络编译 #ifndef ONLINE_JUDGE freopen... #endif 2. 优化模板 - cin优化 std::ios::sync_with_stdio(false); - 编译优化(火车头) 点击查看代码 # pragma GCC diagnostic push # pragma GCC diagnostic ignored "-Wattributes" # pragma GCC diagnostic

  • C++ 内联和嵌套命名空间2022-09-06 00:05:10

    目录命名空间的作用内联命名空间 inline namespace(C++11)内联命名空间有什么用?嵌套命名空间的简洁用法(C++17)嵌套定义内联命名空间(C++20)参考资料 命名空间的作用 开发大型软件通常需要许多开发人员并使用很多第三方库,为了防止函数和类型命名冲突,因此引入命名空间。 在使用函数和类

  • 【luogu CF633H】Fibonacci-ish II(莫队)(线段树)(矩阵乘法)2022-09-04 21:30:09

    Fibonacci-ish II 题目链接:luogu CF633H 题目大意 给你一个序列,每次问你一个区间,把里面的数拿出来去重排序,第 i 个位置乘上斐波那契数列第 i 项之后所有数的和。 思路 这题卡常。 (而且好像能暴力优化草过去但是写的是标算) 首先看着数据范围会主观思考 \(\sqrt{n}\) 有关的,思考完

  • 卡常小技巧2022-09-02 13:30:31

    那些也许有用的卡常小技巧 作者卡Ynoi卡吐了 一,代码优化 1.inline 其实还是有点用的。 不带inline: 带inline: 2.register 注意有些不能加,但优化程度还是很大的。 不带register: 带register: 3.i++ $ \Rightarrow $ ++i 但是优化很小,如果只差一点可以加上后多跑几遍,增大卡过的

  • CF375E Red and Black Tree2022-08-31 20:32:23

    题目传送门 Solution 非常神奇的一道题。 我们不考虑交换操作,相反,我们去考虑把多少个 \(0\) 的位置变为 \(1\),同时我们记录选了多少个黑点,如果跟原来黑点数量相同即是合法。 此时我们可以发现一个神奇的性质对于 \(u\) 的儿子 \(v\),如果覆盖 \(u\) 的节点不覆盖 \(v\),那么覆盖 \(v

  • C20220725T2 运动2022-08-31 12:31:19

    给定序列 \(s\) ,求满足 \(max\{s_{i,j}\}-min\{s_{i,j}\}\leq k\) 的最大长度 \(j-i\) 。 \(n\leq 3\times10^6\) 。(时限3s) 没想到 \(O(n\,log\,n)\) 没有被卡掉。首先判断区间的最大最小值可以用单调队列 \(O(n)\) 求出,然后就二分就好了,跑的飞快。 然后是 \(O(n)\) 的正解,其实

  • C20220725T3 回文2022-08-31 12:30:48

    给定字符串 \(s\) ,求 \(s_{l,r}\) 中回文串个数。多组询问, \(|s|\leq 5000\) , \(T\leq10^5\) 。 首先介绍 \(O(n\times T)\) 的离谱做法(竟然没卡掉),先跑 \(Manachar\) ,然后暴力查询 \([l,r]\) 的回文串数量,最后用一个数组记录下来(防1 5000数据)即可。 然后是正解,首先处理出 \(g[i]

  • C++ inline2022-08-30 08:32:48

    1.inline可以免除函数调用时的保存上下文时的一些开销,其本质就是对此函数的每一个调用都以函数本体替换之。   inline的坏处:若在一台内存有限的机器上,过度热衷inlining会造成程序体积太大,即使拥有虚拟内存,inline造成的代码膨胀也会导致额外的换页行为,降低指令高速缓存装置的集中

  • 【C++】实现D3D9 的 Inline hook2022-08-27 23:34:02

    【C++】实现D3D9 的 Inline hook   简单介绍一下HOOK原理:     函数调用的过程大致是 先push 参数 进去,再执行 call 函数地址 ,进入函数。此时将所调用的函数的前五个字节修改,将开头改成 jmp xxxxxxxx(地址偏移) ,则可以进入自己的函数,执行自己函数的内容,执行完自己的函数后,还原

  • 【模板】树状数组2022-08-22 16:32:08

    【模板】树状数组 一维树状数组 #define lowbit(x) ((x) & (-x)) const int maxN = 1e6 + 10; typedef long long ll; struct BIT { ll data[maxN << 2]; inline void add(int k, int x) { while (k <= N) { data[k] += x; k += l

  • Flex 布局 display:flex 与 inline-flex 区别2022-08-21 10:00:38

    1.Flex布局  display:flex .bigbox{ width: 500px; height: 400px; background:#ff0000; display: flex; } .smallbox{ width: 100px; height: 100px; background: #f5f5f5; margin: 10px; }   <span>flex</span> <div class="

  • CF #526 部分题解2022-08-21 00:34:24

    传送门 CF1083C Max Mex 求一条 \(\text{mex}\) 值最大的路径,相当于求一个最大的前缀 \(0,1,2,\cdots,k\) 使得点权为 \(0,1,\cdots,k\) 的点都可以被包含在同一条链中。 考虑使用线段树维护,第 \(i\) 个位置存树上点权为 \(i\) 的点的编号,如果我们能对每个区间求出其是否构成链以

  • 03.内联函数(了解)2022-08-20 09:00:59

    1.宏函数的缺陷 #define ADD(x,y) x+y //在普通函数前面加上inline是向编译器申请成为内联函数 //注意:加inline可能成为内联函数,可能不成为内联函数 inline int Add(int x, int y) { return x + y; } void test() { //10+20*2 int ref = ADD(10, 20) * 2; cout << "ref=" <<

  • BIT学习笔记2022-08-16 10:01:59

    基础树状数组: 先放一张图: 图中黑色的框为 \(a\) 数组(原数组)。 图中黑色的框为 \(t\) 数组(树状数组)。 我们可以得到 $t[i]= \sum_{j=1}^{j \le 2k}{a[i-2k+j]} $。 在这里,\(k\) 为 \(i\) 的二进制中从最低位到高位连续零的长度。 那我们要如何求这个 \(k\) 呢? 我们需要用到一个东

  • Qt开发经验小技巧236-2402022-08-14 11:30:08

    关于在头文件中定义函数使用static关键字的血的教训。 有时候我们需要将一些常用函数写在一个文件中供很多地方调用,如果写的是 int doxxx{} 这种,在你多个地方引用的时候,肯定会编译报错提示 “重复定义” 的错误。 此时你需要在函数前面加上static关键字,变成 static int doxxx{}

  • 【C++】构造函数2022-08-12 23:02:45

    函数若是在class body内定义完成,就会自动成为inline候选人 inline只是给编译器一个提示,最终一个函数是否真正被inline,编译器会做最后的决定 构造函数特殊且独有的一种赋初值的写法,以冒号的形式,直接将构造函数的实参赋值给类的成员变量 一个成员变量赋值的过程有两个阶段:1.初始化赋

  • LGP5203题解2022-08-11 16:30:19

    这个去重给写麻了。。。。。。 显然对于两条非树边,其只能组成最多一条回路。构造方式是将两条非树边在树上的路径中重复的部分去掉,再加上两条非树边即可。 于是考虑如何统计重合的路径。 考虑将一条链拆成两条从祖先到孙子的链。统计这些链相交的情况。 可以注意到只有一个情况会

  • 2022HDU-Multi-University Training AC/DC2022-08-10 16:03:37

    题目链接:https://acm.hdu.edu.cn/showproblem.php?pid=7192 LCT维护一下fail树形态,询问时把删除部分和没有被删除的部分交线附近暴力匹配一下。 #include<bits/stdc++.h> #define N 400009 using namespace std; typedef long long ll; char s[N],s1[N]; int n,q; int ch[N][26],s

  • Codeforces Gym102538(300iq contest 3)A. Airplane Cliques2022-08-08 11:02:43

    给定一棵 \(n\) 个节点的树。定义树上两点距离为它们之间边的数量。 称一对节点是友好的,当且仅当两点之间距离小于等于 \(x\)。 称一个 \(k\) 个节点的集合是友好集合,当且仅当集合中任意两个节点都是友好的。 请对所有 \(k=1\ldots n\),求出恰有 \(k\) 个节点的友好集合数量。 \(1

  • 220803 总结2022-08-03 23:33:09

    220803 总结 总之就是挂大分 顺序开题 T1 解方程:意料之中,没想到可以边读入边取模。 T2 三角形:明明暴力能拿 \(40\) 分,非要人类智慧乱搞,痛失 \(20\) 分 T3 游戏(屠龙勇士):屠龙勇士反被龙屠考场上推出来式子了但是忘了 \(x\) 前面有系数该怎么解于是去打暴力,盯着 \(p=1\) 的 \(30\) 分

  • Fhq-Treap 模板2022-08-02 01:02:49

    namespace Fhq_Treap { int ch[N][3], siz[N], val[N], cnt, rnd[N]; inline void update(int x); inline int newnode(int x); inline int Kth(int now, int k); inline void split(int now, int k, int &x, int &y); inline int merge(int A, int B); inline voi

  • Hard Life2022-07-31 18:05:18

    link 最大密度子图的板子,虽然感觉这种一辈子只见得到一回的题目应该不存在啥模板的说法(没有应用的板子是没有灵魂哒)。 首先那个分数的柿子让人想到了01分数规划,然后套那玩意的板子。在check的过程中遇到经典问题:边有正权,点有负权,选择权值最大的子图。还是那样,把边抽象成点直接跑最

  • Osmosmjerka2022-07-31 18:00:20

    link 出题人是卡常狗。靠。 首先题目中的方向是八方向,即包括右上右下左上左下(不然发现样例一过不去),由于需要判断字符串是否相等,想到使用哈希来加速这一过程。但是呢要求的字符串长度又很长,长宽不等导致无法利用循环的性质来砍掉无用部分(事实上我连这部分都没写出来,呜呜呜)。正解是

  • 模拟赛-水晶2022-07-30 16:04:50

    水晶 题意 给定长度为 \(n\) 的序列 \(\{m_n\}\) ,求满足条件的 \(\{a_n\}\) 的个数,条件是 \(\forall i\),\(0\le a_i\le m_i\)。 \(\oplus_{i = 1} ^ n a_i = 0\)。 答案对于 \(998244353\) 取模。 数据范围 \(0\le m_i<2 ^ {32}, 1\le n\le 2\times 10^{5}\)。 题意 本来的想法

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有