ICode9

精准搜索请尝试: 精确搜索
  • SOSdp2021-04-04 10:33:00

    SOSdp https://codeforces.ml/contest/383/problem/E https://codeforces.ml/blog/entry/45223 E. Compatible Numbers 题意 给定 a i a_i

  • U1498582021-04-03 23:01:47

    题意 给定两个长度为 $n$ 的序列 $a,b$。  对于一个 $1$ 到 $n$ 的排列 $p$,记 $c_i=\gcd(a_i,b_{p_i})$,$\sigma(c)$ 表示序列 $c$ 中所有元素的方差。  求 $$\sum\limits_{p}\sigma(c)$$ 对 $10^9+7$ 取模。 $2\leq n,a_i,b_i\leq 10^6$ 。 题解  方差可以写成以下形式  $$\be

  • P5087 数学2021-04-03 19:02:26

    白水一道蓝题,针不戳 考虑 \(DP\),设 \(f_{i, j}\) 表示前 \(i\) 个数中已选 \(j\) 个的分数。 有状态转移方程: \(f_{i, j}=f{i, j-1}+f_{i-1, j-1}*a_j\) 为什么能这么 \(DP\)? 我们知道,当选到 \(i\),选了 \(k-1\) 个数的时候,\(a_i\) 对答案的贡献就是前面 \(k-1\) 选的数的分组成绩

  • bzoj4543 长链剖分2021-04-03 18:01:09

    为啥我写的都是模板题题解啊 像这种题就得耐心把式子列出来,写出来也不多。为什么某题解用的普通dsu误导人啊,不用长剖写这题的都是毒瘤。 #include<bits/stdc++.h> using namespace std; #define forg(i,x) for(register int i=fir[x];i;i=nxt[i]) #define uu unsigned #define sca

  • 【CF553E】Kyoya and Train(分治FFT)2021-04-03 10:32:15

    点此看题面 给定一张\(n\)个点\(m\)条边的有向图,要求从\(1\)号点走到\(n\)号点,如果到达的时间超过\(t\)则需要交\(x\)元的罚款。 每条边有一个通过代价\(c_i\),通过第\(i\)条边的时间为\(j(j\in[1,t])\)的概率为\(p_{i,j}\)。 求最小代价。 \(n\le50,m\le100,t\le2\times10^4\)

  • 【洛谷6328】我是仙人掌(Floyd+bitset)2021-04-03 09:35:54

    点此看题面 给定一张\(n\)个点\(m\)条边的无向图。 \(q\)次询问,每次给出\(a\)个二元组\((x_i,y_i)\),询问至少与其中一个\(x_i\)距离不超过\(y_i\)的点数。 \(n\le10^3,m,q\le10^5,\sum a\le2.1\times10^6\) 前言:威廉是仙人掌啊 \(bitset\)处理询问 显然对于一次询问,我们只要对

  • 【CF547E】Mike and Friends(AC自动机)2021-04-03 08:01:09

    点此看题面 给定\(n\)个字符串,\(q\)次询问,每次求\(s_k\)在\(s_{l\sim r}\)中的出现次数总和。 \(\sum|s|\le2\times10^5,q\le5\times10^5\) \(AC\)自动机+树状数组 这种一堆字符串的题目,要么建\(AC\)自动机,要么建广义后缀自动机,其实这题两者都行。 最后我还是选择了\(AC\)自动机

  • luogu P5212 SubString2021-04-02 22:33:51

    题面传送门 写了一个晚上才写完+调完,AC那一刻感觉神清气爽。 询问某一个串在另一个串内出现了几次想到AC自动机,但是因为强制在线而AC自动机无法动态更新fail树所以考虑SAM 然后发现我们只要动态维护LCT虚子树大小即可。 然而虚子树大小其实挺难维护的,所以可以改成每个点的链加。

  • 【洛谷4002】[清华集训2017] 生成树计数(prufer序列+大力多项式)2021-04-02 21:33:05

    点此看题面 给定一张森林,其中有\(n\)棵树,第\(i\)棵树中有\(a_i\)个点。 要求再连上\(n-1\)条边使得整张图成为一棵树,假设一种方案中第\(i\)棵树共连出\(d_i\)条边,则这种方案的价值为\((\prod_{i=1}^nd_i^m)(\sum_{i=1}^nd_i^m)\)。 求所有方案的价值之和。 \(n\le3\times10^4,m\l

  • 144. 最长异或值路径2021-04-02 20:01:38

    题目链接:https://www.acwing.com/problem/content/description/146/ 思路:考虑 固定1为根  有节点a,b a到1的路径之间的异或值和b到1之间的异或值相异或的话 得到的结果就是a到b路径的异或值 画图就可以理解 所以题目可以转换成用dfs求出 根1到所有节点的异或值a[i] 然后求这些a[i

  • Linux内核概念:per-CPU,cpumask,inicall机制,通知链2021-04-02 15:32:56

    Linux内核概念 per-CPU,cpumask,inicall机制,通知链 rtoax 2021年3月 在英文原文基础上,针对中文译文增加5.10.13内核源码相关内容。 1. Per-cpu 变量 Per-cpu 变量是一项内核特性。从它的名字你就可以理解这项特性的意义了。我们可以创建一个变量,然后每个 CPU 上都会

  • #define 设计的精巧2021-04-02 13:04:09

    #include <stdio.h> #include <string.h> typedef unsigned char lu_byte; #define CommonHeader struct GCObject *next; lu_byte tt; lu_byte marked #define CommonHeader1 {struct GCObject *next; lu_byte tt; lu_byte marked}GCObject1 /* Common

  • 单调队列12021-04-02 09:02:59

    P1714 切蛋糕 #include <bits/stdc++.h> #define inf 0x7fffffff //#define ll long long //#define int long long //#define double long double #define eps 1e-8 //#define mod 1e9+7 using namespace std; const int mod=1e5+7; const int M=2147483647; const int N=

  • 【洛谷2282】[HNOI2003] 历史年份(线段树优化DP)2021-04-02 08:33:43

    点此看题面 给定一个数字串,让你把它划分成若干段,使得每段数字递增(可以有前导\(0\)),且在最后一个数尽可能小的前提下,字典序最大。 数据组数\(\le10^3\),\(|S|\le2\times10^3\) 暴力动态规划 首先大体思路自然是先从前往后\(DP\)一遍求出最后一个数最小的取值,再从后往前\(DP\)一遍求

  • Codeforces Round #500 (Div. 2) [based on EJOI] C. Photo of The Sky (思维)2021-04-01 21:04:10

    题意:有\(2n\)个数,要凑\(n\)个坐标出来,使得这些坐标全部落在一个矩形内部,问你最小的矩形面积是多少. 题解:这种题一般都是将横纵坐标分开看,首先,矩形的面积=\((max(x)-min(x))\)*\((max(y)-min(y))\).对坐标排序,根据最值原理,“和一定,差大积小”,所以我们可以固定\(x\)

  • 【洛谷4117】[Ynoi2018] 五彩斑斓的世界(第二分块)2021-04-01 15:32:09

    点此看题面 给定一个长度为\(n\)的序列,要求支持两种操作:将区间内大于\(x\)的数减去\(x\);询问区间中\(x\)的出现次数。 \(n\le10^6,q\le5\times10^5,V\le10^5\) 第二分块 突刺贯穿的第二分块 首先观测这道题极度卡内存,肯定无法对于每个块分别开一个\(O(V)\)的数组。 但是,这道题

  • 【CF643G】Choosing Ads(线段树)2021-04-01 07:33:32

    点此看题面 给定一个长度为\(n\)的序列和一个整数\(p\)。 要求支持两种操作,区间赋值;询问区间中出现次数至少占\(p\%\)的数,可以输出至多\(\lfloor\frac{100}p\rfloor\)个数,可以包含错解,但必须有正确的解。 \(n\le1.5\times10^5,20\le p\le100\) 前置:一个经典的简单题 一个很简单

  • [CF653F] Paper Task2021-04-01 07:33:16

    \(\text{Problem}:\)Paper Task \(\text{Solution}:\) 合法括号串的性质:左括号个数等于右括号个数;任意一段后缀中,左括号个数小于等于右括号。 将 ( 看作 \(-1\),) 看作 \(1\),那么区间 \([l,r]\) 对应的子串是合法括号串的条件:\(1.\) 区间和为 \(0\);\(2.\) 区间内任意一段后缀和都大

  • ubuntu20+cuda11.0+cudnn7.6.0安装caffe2021-03-31 21:32:16

            查看cudnn版本 cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 #define CUDNN_MAJOR 7#define CUDNN_MINOR 6#define CUDNN_PATCHLEVEL 0--#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL) #include "driver_ty

  • 【CF566E】Restoring Map(构造)2021-03-31 20:34:54

    点此看题面 有一棵\(n\)个点的树,乱序给出与每个点距离小于等于\(2\)的点集。 求构造一棵合法的树。 \(n\le10^3\) 非叶节点间的连边 两个非叶节点\(x,y\)之间存在边,则对于它们两侧的两点\(i,j\),同时与\(i,j\)距离小于等于\(2\)的点只有\(x,y\)两点。 因此,非叶节点\(x,y\)之间有

  • 简单梳理一下最近准备蓝桥杯时学习DP问题的想法2021-03-31 14:05:22

    学习时间不长,记录的只是学习过程的思路和想法,不能保证正确,代码可以在acwing上AC。 01背包问题: 1.首先是简单的01背包问题 2.先确定状态,f[i][j]表示有第i件物品,时间为j的最大价值。 3.第i件物品取时f[i][j]=f[i-1][j-W[i]]+V[i],第i件物品不取时f[i][j]=f[i-1][j],物品只有取与不

  • tarjan算法2021-03-31 11:36:24

    每次向下搜点,\(dfn[i]\)表示搜到第\(i\)点时的编号,\(low[i]\)表示第\(i\)个点能到达的最小的点的编号,我们在搜的时候可以把路径上的点存入到栈中,当\(dfn[i]=low[i]\)时,说明我们已经找完一个强连通子图了,此时就可以把栈中的元素出栈得到一个强连通子图. 代码: #include <

  • [2021省选板刷]2021-03-30 22:32:08

    绿色的话主要是自己想出来的,红色的是看了题解的 真就啥都不会。。。 \({\color{red}{「九省联考 2018」一双木棋}}\) 前置知识:\(minmax搜索\): 两方都采取最优策略,问我方的最终结果,轮到我方采取对答案贡献最大的,敌方采取对答案贡献最小的搜索方案 考虑用\(vector\)记录每一列放了多

  • cc2530按键中断2021-03-30 21:34:00

    cc2530按键中断 #include "ioCC2530.h" #define LED1 P1_0 #define LED2 P1_1 #define ON 1 #define OFF 0 void delay(unsigned int time) { unsigned int i; unsigned int j; for(i=0;i<time;i++) for(j=0;j<240;j++) { asm("NOP&qu

  • opencv获得鼠标点击像素坐标2021-03-30 20:02:30

    opencv获得鼠标点击像素坐标 鼠标操作涉及两个函数,第一个是cvSetMouseCallback,这个函数注册一个回调函数。使用方法如下: cvSetMouseCallback(“TestWin”, TestCallBack, Context); 前两个参数分别是窗口的名字和回调函数,最后一个参数需要稍微解释一下,这个参数会作为参数传递

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

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

ICode9版权所有