ICode9

精准搜索请尝试: 精确搜索
  • 【LG-P3920/WC2014】 紫荆花之恋 题解2022-07-20 08:34:26

    Solution 在此提供一种可能相对其他解法较为好写的做法。 一 首先考虑一棵如下图的树,其中 \(rtlr_0=6,\ rtlr_1=5\)。 发现此时这棵树不考虑根节点只有两条链,而左右链的末尾分别是 \(rtlr_0\) 和 \(rtlr_1\)。 同时,按照套路,我们将 \(dist(i,j) \leq r_i+r_j\) 化为 \(dist(i, l)-

  • 【CF768B】Code For 1 题解2022-07-20 08:34:12

    传送门:B. Code For 1 像我这么菜的 \(Oier\),考场上只想的出来类似模拟线段树的做法啦~ 被暴力吊打(大哭)。此题解提供一种新做法做参考。 Solution 1 首先我们发现一个给定的 \(n\),我们是可以求出它最终化为的 01 串的长度。 设 \(s_{lst}\) 为当前分解得到的串的长度,\(x\) 为分解出

  • LG-P7549 [BJWC2017] 神秘物质 题解2022-07-20 08:33:33

    传送门:P7549 [BJWC2017] 神秘物质 先膜拜一下 \(\text{cyf}\) 学长。本题解主要是补充一下 \(\text{cyf}\) 学长思路的细节。 Solution 1 首先看操作一、二,发现它们的本质实际上都是对一段区间的操作。 所以本题使用文艺平衡树来维护。 也就是说,对于每次的一、二操作,我们都会将要

  • 【LG-P4332 [SHOI2014]】三叉神经树 题解2022-07-20 08:32:48

    题面挺有意思(恶心)的。 传送门:P4332 [SHOI2014]三叉神经树 LCT Solution 1 对于每一个非叶子节点 \(i\),有 \(val_i\),表示其输出为 1 的儿子的总数。所以对于每一个 \(val_i,\ i \in [1,n]\) ,其取值范围是 0~3。所以我们发现这个非叶子节点 \(i\) 最后输出的结果就是 \(\left\lfloor

  • CF1685D Permutation Weight [贪心,构造]2022-07-20 00:01:26

    传送门 思路 令 \(p' = p^{-1}\),即 \(p'_{p_i} = i\),则原题等价于最小化 \(\sum |p'_{q_i} - q_{i+1}|\)。显然,当所有 \(i\) 都满足 \(p'_{q_i} = q_{i+1}\) 时原式取最小值,但这时 \(q\) 不一定是一个排列。容易发现,排列 \(q\) 给出了一个在 \(p'\) 形成的图上遍历的顺序,考虑 \(p'

  • 关于 数论-逆元 的学习2022-07-18 20:01:36

    参考教程: (6条消息) 逆元原理详解_跑起来要带风!的博客-CSDN博客 (6条消息) 密码学中模运算的逆元求解_Gardenia Minwentel的博客-CSDN博客_模逆元怎么求 原理: \(a^{m-1}mod m=1modm\)(m为素数) \(a*a^{m-2}mod m=1modm\) \(\frac{1}{a}mod m=a^{m-2}mod m\) 详细见:欧拉定理与费马

  • Tarjan2022-07-18 17:03:16

    Robert E. Tarjan(罗伯特·塔扬,1948~),生于美国加州波莫纳,计算机科学家。 Tarjan 发明了很多算法和数据结构。不少他发明的算法都以他的名字命名,以至于有时会让人混淆几种不同的算法。比如求各种连通分量的 Tarjan 算法,求 LCA(Lowest Common Ancestor,最近公共祖先)的 Tarjan 算法。并

  • 1004 Counting Leaves 测试点1数据2022-07-18 14:35:47

    易错点 测试点1或其他测试点错了,可以尝试用下面这个数据测试: 3 2 02 1 03 01 1 02 代码 #include <iostream> #include <cstdio> using namespace std; int p[101]={-1};//记录每个点的父母结点的id int p2[101]={0};//为1时表示这个点肯定不是叶子结点 int level[101]={0};//

  • 1511:【SCOI2011】糖果2022-07-18 08:31:30

    【题目描述】 幼儿园里有 N 个小朋友, lxhgww 老师现在想要给这些小朋友们分配糖果,要求每个小朋友都要分到糖果。 但是小朋友们也有嫉妒心,总是会提出一些要求,比如小明不希望小红分到的糖果比他的多,于是在分配糖果的时候, lxhgww 需要满足小朋友们的 K 个要求。 幼儿园的糖果总是有

  • 模拟退火2022-07-17 20:33:11

    模拟退火 模拟退火是一种 著名的 玄学的随机化算法,其建立在物理中退火过程的基础上 其时间复杂度为 \(O(\text{时限})\) ,正确概率为 \(\text{(参数优秀程度+阳寿)}\%\) 通常人们使用造数据+手动二分调参的方式来提高正确率 这种算法是 \(oier\) 在比赛中的不二选择 如 UVA10228 A

  • [atARC141F]Well-defined Abbreviation2022-07-17 15:39:09

    取$T=S_{i}$,不断删除其任意子串$\in \{S_{j}\mid i\ne j\}$,最终应有$T\in \{S_{i},\empty\}$ 关于该过程的实现,考虑建立AC自动机,并从前往后依次加入字符 若当前节点存在后缀为某子串,则删去该后缀,并跳到剩余部分对应位置 若$T=\empty$,则删除$S_{i}$可以以该过程代替,不妨去掉$S_{i

  • 1046 [USACO 2016 Ope P]262144 区间DP 不会~~~~~~~~~~~~~2022-07-17 07:02:45

    https://blog.csdn.net/qq_45516669/article/details/108209561?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-1-108209561-blog-121525948.pc_relevant_sortByStrongTime&depth_1-

  • 比较纯粹的分块线段树等 DS 趣题2022-07-16 22:38:05

    SP1043 GSS1 要你求一个区间的最大子段和。 那么,显然地,我们可以维护区间最大前缀和和后缀和。 即根据左区间后缀和加上右区间前缀和可以等于最大子段和这个性质。 那么如何维护最大前缀和和最大后缀和呢? 显然一段区间分成两块,最大前缀和有可能是左区间的最大前缀和,也有可能是左

  • CDQ分治学习笔记2022-07-16 20:34:45

    CDQ 分治 \(CDQ\) 分治可以用来解决多维偏序问题 它是一个在线算法 二维偏序 给你 \(n\) 个元素,每个元素有两个属性 \(a_i\) 和 \(b_i\),定义 \(f(i)\) 表示 \(a_j\le a_i\) 且 \(b_j\le b_i\) 的元素数量 求 \(f(i)=d\) 的数量 \((d\in[0,n])\) 思路: 我们可以以 \(a_i\) 为第一关

  • 如何解决php curl请求失败问题?2022-07-16 16:04:16

    php curl 发送请求失败问题 前提:运行在命令行模式中(没有超时设置) 多次调用curl ,可能出现发送请求失败的问题, 原因可以是curl连接复用,使用的是缓存池中的建立。 解决方法:设置curl 参数, curl_setopt($ch, CURLOPT_FORBID_REUSE, 1); curl_setopt($ch, CURLOPT_FRESH_CONNECT, 1);

  • cf1697 D. Guess The String2022-07-16 12:32:37

    题意: 交互题。 猜一个小写字符串 \(s\),两种询问方式: 1 i ,回答 \(s_i\) 是什么字符 2 l r,回答 \(s_l\sim s_r\) 中的不同字符数量 $|s|\le 1000, $ 两种询问的次数限制分别为 \(26,6000\) 思路: 第一种询问不能超过 26 次,那肯定是先确定每种字符的分布(但不知道具体是什么字符),再询

  • 2022/7/15 CSP-S模拟题总结2022-07-16 08:32:54

    题单贴贴 A.烽火传递 其实就是一道单调队列优化 \(DP\),挂分是因为弹出队尾的条件 \(f[q[r]]>=f[i]\) 写成了 \(a[q[r]]>=a[i]\) (悲); AC code #include<bits/stdc++.h> using namespace std; inline int read(){ int s=0,f=1; char ch=getchar(); while(!isdigit(ch)){ if(

  • 考试7.152022-07-15 19:33:45

    烽火传递(signal.cpp) 【题目描述】 烽火台是重要的军事防御设施,一般建在交通要道或险要处。一旦有军情发 生,则白天用浓烟,晚上用火光传递军情。 在某两个城市之间有n座烽火台,每个烽火台发出信号都有一定的代价。为 了使情报准确传递,在连续m个烽火台中至少要有一个发出信号。 现在

  • CF1093G Multidimensional Queries2022-07-14 22:33:39

    \(\text{Code}\) 分析在 2022暑假集训 #include <cstdio> #include <iostream> #define IN inline using namespace std; const int N = 2e5 + 5, INF = 0x3f3f3f3f; int n, d, a[N][5]; IN void read(int &x) { x = 0; char ch = getchar(); int f = 1; for(

  • 这次应该叫高二上几调?2022-07-14 19:34:39

    B. biology 错误思路:按a的值分个层,直接把每层的最大值的点编号放到队列里,后来忽然发现每个a最小一层的点都有可能当一次起点,它的位置决定了后面的点的位置,不能单独考虑起点b值的大小,于是就让每一个最小的a当一次起点循环一遍。我已经做好了它超时的心理准备,但是有WA的点就不太理解

  • 2022.7.14 模拟赛2022-07-14 18:31:29

    目录2022.7.14 模拟赛数独分糖果维修机器人小乔 2022.7.14 模拟赛 \(\to\text{link}\leftarrow\) 数独 思路: 大模拟 \(40min\) 写完调完,难度一般般 #include<bits/stdc++.h> using namespace std; inline int read(){ int x=0,f=1;char ch=getchar(); while(!isdigit(ch)){if(c

  • 数据结构 背单词2022-07-14 07:31:28

    1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 #define MAX_CHAR 20 // 最大字符 5 #define MAX_NUM 200 // 单词的最大个数 6 #define MAX_U 20 //用户人数 7 struct word 8 //单词的结构体 自定义类型 9 { 10 char

  • [NOI2020] 美食家 题解2022-07-13 21:06:49

    前言 之前一直对这题有点迷惑,现在终于搞懂了,故作此文。 upd:昨天晚上写的没保存,今天重新写,悲( 。 难度 大概 \(2500\) ,思路比较自然,使用的都是常用优化技巧。 题意简述 给定一个 \(n\) 个点, \(m\) 条边的有向图,走过每条边需要花费 \(w_i\) 天,每个点有一个得分 \(c_i\) 。 另外有 \(k

  • [AGC010E] Rearranging2022-07-13 21:04:32

    来源 \(Atcoder\) \(Grand\) \(Contest\) \(010E\) 算法标签 高质量思维题 题目难度 \(AT\) 官方评分 \(3800+\) ,按 \(CF\) 评分差不多 \(3100\) 。 题意 有一个 \(n\) 个数组成的序列 \(a_i\) ,第一个人会把整个序列任意排列,然后第二个人可以选择两个相邻的互质的数交换位置。 第

  • 2022.7.13 模拟赛2022-07-13 19:02:51

    目录2022.7.13 模拟赛最大序列思考熊的马拉松疏散演习下标 2022.7.13 模拟赛 \(\to\text{link}\leftarrow\) 最大序列 思路: 首先出栈的必然是最大的数 设每次出栈的数在 \(i\) 处 然后不断比较 \(i-1\) 处的数和 \(i\sim n\) 中最大的数,判断往哪边出栈 细节很多 貌似就只有我一个

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

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

ICode9版权所有