2020.4.18集训总结

2020年CSP-J复赛真题及题解:T4 方格取数 阅读详情

线段树专题II,比I还是好点吧…I的T3T4太毒瘤


T1

[POI2015] KIN

传送门

这题思路其实非常的巧妙,至少我想不到
我们考虑从左到右枚举右端点,然后拿线段树储存每个点作为当前选的左端点的答案,最后取 max ⁡ \max max就是当前的答案
然后考虑如何更新答案,我们发现,对于当前右端点 i i i位置上的 a i a_i ai​,在 a i a_i ai​上一次出现的位置 [ l a s t + 1 , i ] [last+1,i] [last+1,i]之间答案都应该加上 a i a_i ai​,飞速码完之后测了一发样例,WA了,为什么呢?

因为我们仔细读定义就会发现,对于在 l a s t last last以前的部分,他是不应该计算答案的,因为如果出现相同的一个都不算,所以我们应该把 [ l a s t 2 + 1 , l a s t ] [last^2+1,last] [last2+1,last]这一段都要减掉 a i a_i ai​,emmmmmm l a s t 2 last^2 last2就是 l a s t last last的 l a s t last last啦

然后就好了嗯


T2

[HEOI2016/TJOI2016] 排序

传送门

这周集训的第二题,感觉比第三题难想

这道题其实有复杂度为 O ( n log ⁡ n ) O(n\log n) O(nlogn)的线段树分裂的做法,但是我太菜了不会,所以只能来水两个 log ⁡ \log log的做法了qwq

我们首先考虑这个区间如果只有 0 0 0和 1 1 1怎么做,那么对于一个区间,如果是升序排序,那么就把区间里面所有的 0 0 0扔到左边, 1 1 1扔到右边,其实就是一个简单的区间覆盖,降序也同理

如果不是 0 , 1 0,1 0,1怎么办呢?考虑把他们变成 0 , 1 0,1 0,1序列,二分一下,把所有小于 Δ \Delta Δ的走变成 0 0 0,其他的变成 1 1 1,然后如果最后 q q q的位置是 0 0 0,就尝试把 Δ \Delta Δ减小(因为 0 0 0太多了…),否则就尝试把 Δ \Delta Δ增大

这样我们就可以在 O ( n log ⁡ 2 n ) O(n\log^2n) O(nlog2n)的时间解决,因为 n ≤ 1 0 5 n\leq 10^5 n≤105,时限 4 s 4s 4s,显然可以通过


T3

[HAOI2012] 高速公路

传送门

先说老师给出的做法吧
显然这题要求的就是区间所有情况的和,因为边不好判断,所以可以把边看成点,那么对于查询一段看成点之后的区间,我们要求的应该就是 ∑ i = l r v i t i \sum_{i=l}^r v_it_i ∑i=lr​vi​ti​,其中 t i t_i ti​表示第 i i i条边被访问的次数
根据乘法原理,就是左边的点数 × \times ×右边的点数,注意因为看成了点,所以 i i i点位置其实左边有一个右边有一个都要被算进去,所以我们知道了我们要求的是

∑ i = l r ( i − l + 1 ) ( r − i + 1 ) v i = ∑ i = l r ( r i − i 2 + i − l r + l i − l + r − i + 1 ) v i = ∑ i = l r ( − i 2 + ( l + r ) i + ( − l r − l + r + 1 ) ) v i = − ∑ i = l r i 2 ⋅ v i + ( l + r ) ∑ i = l r i ⋅ v i + ( − l r − l + r + 1 ) ∑ i = l r v i \begin{aligned} &\quad\sum_{i=l}^r (i-l+1)(r-i+1)v_i \\ &=\sum_{i=l}^r(ri-i^2+i-lr+li-l+r-i+1)v_i \\ &=\sum_{i=l}^r(-i^2+(l+r)i+(-lr-l+r+1))v_i \\ &=-\sum_{i=l}^r i^2\cdot v_i+(l+r)\sum_{i=l}^r i\cdot v_i+(-lr-l+r+1)\sum_{i=l}^r v_i \end{aligned} ​i=l∑r​(i−l+1)(r−i+1)vi​=i=l∑r​(ri−i2+i−lr+li−l+r−i+1)vi​=i=l∑r​(−i2+(l+r)i+(−lr−l+r+1))vi​=−i=l∑r​i2⋅vi​+(l+r)i=l∑r​i⋅vi​+(−lr−l+r+1)i=l∑r​vi​​
然后算到这里就很明显了,我们需要维护的是区间的 ∑ i 2 ⋅ v i , ∑ i ⋅ v i \sum i^2\cdot v_i,\sum i\cdot v_i ∑i2⋅vi​,∑i⋅vi​和 ∑ v i \sum v_i ∑vi​
然后维护这几个玩意也不难,就不说了

还有一种做法在这里


T4

[NOI2007]项链工厂

传送门

一个一个操作来说吧,先不考虑旋转的情况
显然是一个线段树维护老司机树也行,维护总段数,左颜色,有颜色

  • s w a p swap swap
    先查询出 x , y x,y x,y的颜色,然后再交换涂色,线段树单点查询单点修改
  • p a i n t paint paint
    线段树区间覆盖
  • c o u n t count count
    查询 [ 1 , n ] [1,n] [1,n],然后如果 l e f t c o l o r = r i g h t c o l o r ∨ s e g m e n t > 1 leftcolor=rightcolor \lor segment>1 leftcolor=rightcolor∨segment>1,就答案 − 1 -1 −1就好了
  • c o u n t s e g m e n t countsegment countsegment
    区间查询

然后考虑如果有旋转情况怎么办

  • r o t a t e rotate rotate
    开一个变量记录一下转了多少就好了
  • f l i p flip flip
    开一个变量记录有没有反转就好了

但是!!! r o t a t e + f l i p rotate+flip rotate+flip就变得极其恶心,细节不少
我们开一个变量 r o t rot rot记录旋转的量, r e v rev rev表示有没有被反转过

当 r e v = 0 rev=0 rev=0的时候,即没有被反转过,那么就只需要考虑 r o t rot rot,那么位置 i i i对应的就是 i − r o t i-rot i−rot(当然要取模之类的)
当 r e v = 1 rev=1 rev=1的时候,我们应该先反转,然后再按上面 r e v = 0 rev=0 rev=0的时候进行求值就可以了

但是!!!这里还有一个问题,就是如果 f l i p flip flip了之后,顺时针的方向也变了,也就是说,在 r e v = 1 rev=1 rev=1的时候,我们还需要把 l , r l,r l,r两个位置交换一下,然后再进行 p a i n t paint paint或者 c o u n t s e g m e n t countsegment countsegment


总结:
线段树很多时候并不处于主导作用,比如T1,T2,只是用来优化时间复杂度的嗯
我觉得各个题的实现的障碍在于

  • T1:确定线段树维护什么量,还有 [ l a s t 2 + 1 , l a s t ] [last^2+1,last] [last2+1,last]要减的问题虽然过不了样例
  • T2:想到 01 01 01做法并从 01 01 01做法推广到一般也就是二分
  • T3:推式子能力或者对于情况的逐步讨论
  • T4:思路不难,但是代码实现细节较多
信奥赛CSP-J复赛集训(DP专题)(22):[CSP-J2020] 方格取数 阅读详情

相关推荐

STM32G0定时器中断实战:HAL库配置TIM2实现精准1秒LED闪烁(附完整代码)

本文深入解析了STM32G0系列微控制器中定时器中断的配置与应用,重点介绍了如何使用HAL库配置TIM2实现精准的1秒LED闪烁。通过详细讲解时钟树分析、预分频系数与自动重装载寄存器的计算原理,并结合CubeMX图形化配置与完整代码示例,帮助开发者从底层理解定时器工作机制,掌握可复用的工程化配置方法。

weixin_29194817的博客 252

集训总结

呃······ 刚到北京的第一个晚上没睡好,直到天亮才睡着 然后是第一天的课程 参加的是清北学堂的NOI2018提高组基础班 第一天讲的大部分是在学校讲过的课程,然后下午有个考试 本来觉得能考个100+的分,但只考了30 第一题本来能AC,但是编译错误,有一个j 和i 打反了 晚上还郁闷了一会儿 然后第二天就是将各种算法,之前多少都接触过一些 但是老师的手速太快了,目不暇接 ...

weixin_30273931的博客 184

树莓派上基于ONNXRuntime与Qt的C++模型部署实战指南

本文详细介绍了在树莓派上使用ONNXRuntime与Qt进行C++模型部署的完整流程。从环境配置、依赖安装到交叉编译优化,再到Qt界面集成与ARM架构性能调优,提供了实战指南和常见问题解决方案,帮助开发者高效完成边缘设备上的AI应用部署。

ik6789012的博客 337

NOIP2015集训总结

又是一年秋天到,对于一介Oier来说,又到了新的一个赛季。最近的两个星期,我经历了人生中第一次停课训练。这样的生活还是第一次经历,有一份新鲜感。 好了。。。废话不多说,直接进入正题——集训总结集训总结总的来说,停课训练还是比较累的(特别是想到回去以后有成吨的文化课要补),但是我也收获了许多,比如说:学了很多新算法,见识了很多新题,了解了很多新思想。。。经过这次集训,顿时感觉初中时候的我就是在玩泥巴

Akakii的博客 1658

功率电感的设计步骤

学习视频原链接截图1截图2。

qq_32419593的博客 4884

第一天(点亮led灯+led灯闪烁)——Arduino uno R3 学习之旅

发光二极管(Light Emitting Diode,简称LED)是一种能够将电能转化为光能的固态的半导体器件。长脚为阳极短脚为阴极电流必须从长脚流入从短脚流出方可点亮LED##杜邦线杜邦线:是导线中的一种,杜邦线端部有两种接头形式:带针的一种称为公头,带孔的一种称为母头,如下图所示:说明:与电源相连接时,一般采用红色杜邦线,与地连接时采用黑色杜邦线。

qwsbcjendb的博客 1129

NOIP2018集训总结

由于语文水平有限,精美的桥段,跌宕起伏的情节是不可能的了,也许看起来会很智障 初赛 前排沙发祝贺墙根火。 这次初赛主要在“读程序填空”上失分较多。 先找几个不是原因的原因: 考前那晚宿舍里人巨吵 考前车上补觉失败 没有携带提神物品入场 脑回路短路成性 再找几个能算原因的原因: 试前准备不够充分,知识点没有好好复习 仅局限于做了的初赛题目,没有给自己定更高的目标 对初赛的重视度不够 做法就是...

打工是不可能打工的,这辈子不可能打工的。 685

SCRFD算法解读及环境安装实践

SCRFD检测算法及环境安装

lishanlu136的博客 1009

集训2020.01.18【NOIP提高组】模拟B 组分析反思(【东莞市选2009】9数字 原子核研究 探险者拉罗 【NOIP2014八校联考第3场第1试10.4】选择困难症)

这次比赛打炸了,67.5分,36名,垫底~~~最近我变水了,突然智商下降,再也找不到以前的感觉,陷入小低谷…… T1:【东莞市选2009】9数字,很简单的一道搜索题目。没想到比赛时居然打崩了,把枚举的范围打小了,答案错误37.5。比赛时没来得及检查,也促成了这一事故。总结:以后比赛无论题打没打完,最后15分钟一定要耐心检查。 T2:【东莞市选2009】原子核研究,比赛时,越看越像数据结构,这题的最...

CJZ的博客 414

离散数学期末考试试卷(两套)-熟悉题型

3.设集合A={a,b,c,d}上有自反关系R={,,,,},对称关系S={,,,}。6.设集合A={1,2,3},B={u,v,w},C={a,b,c},f是集合A到集合B上的映射,g是集合B到集合C上的映射,f={, , },g={},则复合函数g。5. 设集合A={a,b,c,d,e},下列选项中哪一个集合不是A的划分( )。

muse3159546973的博客 6952

Allegro Design Entry HDL(OrCAD Capture HDL)原理图是设计快速入门图文教程

Allegro Design Entry HDL是Cadence公司开发的原理图设计工具,也可与Allegro PCB设计工具无缝对接,虽然板级开发中不如Design Entry CIS(又名 OrCAD Capture CIS)的使用那么广泛,但是由于Design Entry HDL支持芯片的开发,所以有不少公司尤其是芯片背景公司,选择使用Design Entry HDL进行原理图设计。两个原理图开发工具的使用方法大同小异,本文简单介绍使用Allegro Design Entry HDL开始一个新的设计,

fydar的博客 4117

SDUT 2020年SDUTACM暑假集训阶段总结

2020年SDUTACM暑假集训阶段总结 9#501计科1902杜广优 一、学习内容–暑假新学了哪些专题,每个专题刷了多少题 (1) 背包进阶 6 (2) 字典树 3 (3) 线段树 3 (4)线段树扫描线 1 (5)数论基础 5 (6)KMP 5 (7)exKMP 1 (8)manacher 1 (9)二分图最大权 3 二、比赛内容总结(2020年7月27日-8月27日个人赛) (1) VJ先伟老师抓的个人赛(div2 参加场次/总场次)8/9 (2) 比赛中AC多少题(AC题数/总题数)1

sdut_you的博客 270

AutosarMCAL开发——基于TC367、EBTresos 开发之PORT

下图为开漏输出与推挽输出电路区别,推挽输出有两个极性相反的mos构成,一个管子导通另一个管子关闭以实现输出高低电平(电流较小不具备驱动能力),开漏输出仅使用一个MOS管,所以在这种模式下只能输出低电平,想要输出高电平需要外部提供(输入电流不可超过引脚最大电流显示否则会烧MCU)开漏输出:输出寄存器为低电平时,经过输出控制电路变成一个高电平,N-MOS导通,低电平从I/O引脚输出,输出寄存器为高电平时,P-MOS和N-MOS都是截止状态,电平无法通过,想要输出高电平需要外接上拉电阻。

qq_45583706的博客 1404

【2020暑期海亮集训】Day 5:普及组模拟赛(7.21)

目录引子题目T1-时间(time)【题目描述】【输入数据】【输出数据】【样例输入 1】【样例输出 1】【样例输入 2】【样例输出 2】【样例输入 3】【样例输出 3】【数据范围】【附加知识】【解题思路】【Code】T3-数学(math)【题目描述】【输入数据】【输出数据】【样例输入】【样例输出】【数据范围】【解题思路】【Code】T4-发际线(hair)【题目描述】【输入数据】【输出数据】【样例输入】【样例输出】【数据范围】【解题思路】【Code】 引子 怎么还有10天结束这恐怖的集训呀!整天只有考试,考试

Admin-zx 的博客 671

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

HNUCM Contest1092 - 2020年春季ACM集训队热身赛-第3场 比赛题解

Contest1092 - 2020年春季ACM集训队热身赛-第3场 比赛原地址: 传送门 推荐阅读: 【白嫖党】如何把前端学好?看完这篇,直呼:太强了!(历经半个月之作) 文章目录Contest1092 - 2020年春季ACM集训队热身赛-第3场问题 A: 数字分类解题思路AC代码问题 B: 福尔摩斯的约会解题思路AC代码问题 C: 德才论解题思路AC代码问题 D: 锤子剪刀布解题思路AC代...

超逸の学习技术博客 2011

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

西安集训日记

这个学期,我被老师叫去跟一群高一的神犇一起去西安集训,从9号到19号其实就是为了逃课,这篇文章就是我这11天的日记 Day -1 8号我找出了出行学习的计划,从洛谷日报里找了一些有用的东西预习了一下 Day 0 早上坐飞机到西安,中午在外面乱吃了一些东西之后,去买了一堆生(wéi)活(jìn)物品,跟保安说我们是来训练的,就莫名其妙地进去了……吐槽一句,这里的宿舍是真的脏 下午原来想去机房,但是听...

菜鸡Jacky0705的优快云博客 495

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

[集训小记]2020寒假集训(1.19-1.22)

期末考试完美爆炸…险些被逼退役… 然后学校请了某NOI集训队大佬给我们讲课… 果然自闭了 这篇博客主要用来记录一下重要的内容。

Panda_Hu's blog 545

浙江农林大学ACM集训队2019级队长退役回忆录(未实际退役版本)

某个弱校集训队队长的退役回忆录

StandNotAlone的博客 8775

2020.7.18【算协集训】[第1次积分赛]

第1次积分赛Problem A. 真假签到题分析代码Problem B. 渣渣伟的贪玩红月分析代码Problem D. 憨憨龙的烦恼 (*)分析代码Problem E. 海王学姐的少女心 (*)分析代码Problem F. 快乐 beng di分析代码Problem G. 一起去爬山分析代码Problem H. 小明们的工资 写的时候人傻的布星,实际上都不算太难的。(刚结束没多久就把基本所有题想明白了,比赛的时候不会可能主要还是因为练的太少吧) 记录一下认清five现实の第一次积分赛的题。 (一些后来没法交

一脸呆滞的博客 2034

NOI2020同步赛爆零记&暑假划水总结

大概从寒假开始都叫暑假吧 所以要从头开始 大概记录一下在学校划水的事吧 day -213(2020.1.17) 放寒假啦!开心 day -204(2020.1.26) 延期开学了 day -77(2020.6.1) 终于开学了… 然后我们一帮人中午就被 gu 放学之后找去谈话,说了说“训练计划” 然后 nls 把我扣在了食堂,等我过去的时候他们差不多都说完了… 于是啥东西都没听见 day -72(2020.6.6) 开学之后的第一次唯一一次训练 做的是 FJ 集训的题好像,反正三道暴力走人,被吊打了/dk

NephrenRuqInsania 669

2026信奥CSP-J暑假集训时间表

2026年CSP-J暑假集训安排建议:集训通常分三期滚动开设,核心时段为7月上旬至8月中旬,包含基础语法(7月7-25日)、核心算法(7月28-8月11日)和赛前冲刺(8月3-15日)三个阶段,另设4天初赛专项短训。全日制作息包含算法讲解、专题刷题和模拟测试,建议零基础学员选7月初班型,冲刺选手优先算法强化营。需注意9月下旬初赛时间,8月底前应完成2轮模考。各机构营期名额紧张,建议提前2-3周报名。

青少年趣味编程 689

中国最新奥数竞赛成绩出炉:南师大附中女生严彬玮满分夺冠!60人国家集训队名单公布...

雷刚 发自 副中心量子位 报道 | 公众号 QbitAI第35届中国数学奥林匹克竞赛成绩公布。同时也意味着新一届中国奥数国家集训队,正式集结。60名中学生。湖北贡献9人、广东7人,上海...

量子位 1397

分光计的调节实验数据_2020全国中学生物理竞赛上海赛区实验考什么?怎样准备?...

2020年复赛实验的范围官方已经公布了34个标准实验当中选择19个作为考试范围其中误差是贯穿始终的指导思想一共18个操作性实验它们是哪些呢?2020上海赛区实验范围熟悉实验比赛的同学可能立刻就发现今年的范围当中又有了历年高频和难点考题“黑盒子”。范围当中有黑盒子的情况下,考到的概率就会很高,因为黑盒子变化多,准备到原题的概率很小。让我们看看今年的其它实验与前两年相比有什么变化?2019上...

weixin_33603105的博客 429

CSP-J初赛集训(0-26课)

CSP-J初赛集训(0-26课)

青少年趣味编程 1478

暑期集训第四周周报

所谓倍增,就是按22的倍数来增大,也就是跳 1,2,4,8,16,32……32,16,8,4,2,1来跳,如果大的跳不过去,再把它调小。拿 55 为例,从小向大跳,5≠1+2+4,所以我们还要回溯一步,然后才能得出5=1+45=1+4;这也可以拿二进制为例,5(101)5(101),从高位向低位填很简单,如果填了这位之后比原数大了,那我就不填,这个过程是很好操作的。想要实现这个算法,首先我们要记录各个点的深度和他们2i级的的祖先,用数组deep表示每个节点的深度,fa[i][j]表示节点i的2j级祖先。

xiaofu123456789_的博客 1220

2020牛客寒假算法基础集训营6

比赛链接 官方题解 A - 配对 贪心+思维 要使得第K大的和尽可能大,利用贪心的思想完成此题。可以发现,如果A1<A2,B1<B2,那么一定是由A1和B2配对较优。简单归纳可知,倒序配对最优。 贪心算法博客讲解 B - 图 图论 其实这道题用tarjan缩点更好写,也可以像题解中说的利用基环树的一些性质进行简单dfs求解 tarjan算法讲解 浅谈基...

c3po 532
上一篇: [HEOI2013] Segment
下一篇: NOIO Round 2 游记
NephrenRuqInsania
博客等级 码龄8年 20粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值