SDOI2019 Round2】的更多相关文章

这鬼家伙已经咕了好久了-- SDOIR2的题目挺好玩的- 快速查询(???) 不难发现所有的操作都可以通过区间打Tag实现 那么可以维护两个标记\(a,b\)表示序列中的数为\(x\)时实际表示的值是\(ax+b\).对于一个单点赋值操作把值\(x\)变为\((x-b)a^{-1}\)放进数组里面,对于全局赋值操作直接把数组清空.只清空在上一次清空到这一次清空之间被修改的数组上的位置,那么清空的复杂度一定不会大于前面所有操作的操作次数,复杂度就是对的. 至于怎么存这个数组可以离散化也可以像我一样…
这里大概是一些我自己对我的OI之路的一些记录. 2015.11不知道哪一天-- 我听说了"编程". 当时还不懂得啥是信息学竞赛,以为这只是纯粹的程序设计.后来才明白信息学竞赛是算法竞赛不是编程竞赛. 那一天写出了Hello World 以及一个给两个数排序的程序. 7天之后 写出了给三个.四个数排序的程序.学会了冒泡排序. 21天之后 做了第一道OI题目. 29天之后 学了快速排序.小学的我无法理解. 2016年某一天 参加了第一次信息学竞赛,虽然是市级别的,且结果到现在未出. 201…
官方题解:http://wyfcyx.is-programmer.com/posts/95490.html A 目前只会30分的暴力……DP好像很神的样子0.0(听说可以多次随机强行算? //Round2 A #include<cstdio> #include<cstring> #include<cstdlib> #include<iostream> #include<algorithm> #define rep(i,n) for(int i=0…
Loj #3111. 「SDOI2019」染色 题目描述 给定 \(2 \times n\) 的格点图.其中一些结点有着已知的颜色,其余的结点还没有被染色.一个合法的染色方案不允许相邻结点有相同的染色. 现在一共有 \(c\) 种不同的颜色,依次记为 \(1\) 到 \(c\).请问有多少对未染色结点的合法染色方案? 输入格式 第一行有两个整数 \(n\) 和 \(c\),分别描述了格点图的大小和总的颜色个数. 之后两行,每行有 \(n\) 个整数:如果是 \(0\) 则表示对应结点未被染色,否…
[SDOI2019]热闹又尴尬的聚会 链接 luogu loj 思路 第一问贪心?的从小到大删除入度最小的点,入度是动态的,打个标记. 当然不是最大独立集. 第二问第一问的顺序选独立集,不行就不要.选出来的一定是满足不等式的. 每次最多删除p+1个,独立集个数是\(\lceil \frac{n}{p+1} \rceil >= \lfloor \frac{n}{p+1} \rfloor\) 代码 #include <bits/stdc++.h> using namespace std; c…
题目链接: [SDOI2019]快速查询 对于整个序列维护一个标记$(k,b)$表示序列的每个数的真实值为$k*a_{i}+b$(注意要实时维护$k$的逆元),并记录序列的和. 对于单点修改,将$a_{i}$修改为$val$,因为有序列标记,所以实际修改成$\frac{val-b}{k}$并开一个栈将这个位置压入栈中. 对于序列加和序列乘操作,直接修改标记与序列和即可,注意修改$k$时也要修改$b$. 对于序列赋值操作,将$k$赋成$0$,将$b$赋成$val$(即将操作看成先序列赋成$0$再序…
[SDOI2019]快速查询 [题目链接] 链接 [思路要点] 据说是 \(\text{SDOI2019}\) 最水的题 操作次数为 \(1e7\) 范围,显然要求每次操作 \(\mathcal{O}(1)\) 完成 并不需要任何数据结构维护 由于不同的操作数量为 \(1e5\) 级别,可以将所有涉及到的变量离散化出来,并且使用数组直接存储,其它的一些变量全程中值都相同,只需要一个变量记录 如果没有全体赋值的操作,只需要记录一个 \(A\) 和 \(B\) 以及每个数的初值,表示当前某个数的值是…
P5361 [SDOI2019]热闹又尴尬的聚会 出题人用脚造数据系列 只要将\(p\)最大的只求出来,\(q\)直接随便rand就能过 真的是 我们说说怎么求最大的\(p\),这个玩意具有很明显的单调性的吧 直接二分一下\(p\)的值,然后将其和他所以相连的所有度数\(>=p\)加进去, 可能最后有一些的点的实际度数\(<=p\) 我们就把他的贡献减掉,再出现再减 每个点只会入队一次 数据太弱,\(q\)直接随机吧 时间复杂度\(O(T(nlogn+rand)\) #include<c…
A: Divisors 题意:给定 m 个不同的正整数 a 1 ,a 2 ,...,a m ,请对 0 到 m 每一个 k 计算,在区间 [1,n] 里有多少正整数 是 a 中恰好 k 个数的约数. n,ai<=10^9,m<=200 做法:每个数的约数个数为sqrt(n)级别的,所以一共有msqrt(ai)个,对于计算答案,用哈希表判重计算即可. B:Market 题意:在比特镇一共有 n 家商店,编号依次为 1 到 n.每家商店只会卖一种物品,其中第 i 家商店的物品 单价为 c i ,价…
A.Zeratu的军训游戏 Problems: 开灯问题,问无数次操作之后第n盏灯的状态 Analysis: cj:平方数有奇数个约数 Tags: Implementation B.Zeratud的完美区间 Problems: 给定一个1..n的全排列,询问区间[l, r]中的数字是否排序后连续 Analysis: cj:智障的我想了一个及其错误的算法,后来被lucky_ji点醒,if (区间最大值最小值之差 == 区间长度)就好了.. Return:燃鹅楼上STILL犯了一个有趣的错误,Max…
题目描述 小a住的国家被僵尸侵略了!小a打算逃离到该国唯一的国际空港逃出这个国家. 该国有N个城市,城市之间有道路相连.一共有M条双向道路.保证没有自环和重边. K个城市已经被僵尸控制了,如果贸然闯入就会被感染TAT...所以不能进入.由其中任意城市经过不超过S条道路就可以到达的别的城市,就是危险城市.换句话说只要某个没有被占城市到某个被占城市不超过s距离,就是危险. 小a住在1号城市,国际空港在N号城市,这两座城市没有被侵略.小a走每一段道路(从一个城市直接到达另外一个城市)得花一整个白天,所…
题目描述 某国法律规定,只要一个由N*M个小方块组成的旗帜符合如下规则,就是合法的国旗.(毛熊:阿嚏——) 从最上方若干行(>=1)的格子全部是白色的. 接下来若干行(>=1)的格子全部是蓝色的 剩下的行(>=1)全部是红色的 现有一个棋盘状的破布,分成了N行M列的格子,每个格子是白色蓝色红色之一,小a希望把这个布改成该国国旗,方法是在一些格子上涂颜料,盖住之前的颜色. 小a很懒,希望涂最少的格子,使这块破布成为一个合法的国旗. 输入输出格式 输入格式: 第一行是两个整数,N,M 接下来…
2016-05-21因为BZOJ上“ 数据文件太过巨大,仅提供前三组数据测试.”所以我考场上写的60分的点分治交上去也A了. 我的这个点分治的时间复杂度是$O(Tnmlogn)$的,听题解时没听懂$O(Tnlogn)$的标算,还有听说标算要用到字符串哈希,然而我并不会,所以先留个坑,贴上自己的60分代码,满分做法等我学会哈希之后再做 #include<cstdio> #include<cstring> #include<algorithm> using namespac…
我第一次写游记,,,, 正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪…
Problem 1061: 好序列 Time Limits:  1000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  %lld   Java class name:  Main Description 杨神觉得好的序列需要符合这两个条件 1.这段序列可以平均分成三段,第一段和第三段相同 2.第二段与第一段相反 给你一个由n个非负整数组成的序列,问连续子序列是好序列时,该连续子序列的长度是多少. Input 第一行为t 代表t…
数据包:http://pan.baidu.com/s/1pJNSkL9 T1: 我们先直接用矩阵快速幂暴力 首先是0维,f1=1,f2=1 然后推出下一维的f1'和f2' 下一维的f1'和f2'其实就是f1+f2+f3+....+fn和f2+f3+f4+...+fn+1 所以f1'=sn,f2'=s(n+1)-f1 所以可以klogn求出答案 但是我们做了很多相同的事情,求sn和s(n+1)的时候求出来的矩阵是一样的 所以可以是logn+k的 但是既然是一样的其实f1,f2推到f1'和f2'是可…
第一题: 第一问可以用划分树或主席树在O(nlog2n)内做出来. 第二问可以用树状数组套主席树在O(nlog2n)内做出来. 我的代码太挫了,空间刚刚卡过...(在bzoj上) 第二题: 分治,将询问分成两部分,每部分递归处理,每部分都把与询问无关的缩点. 还有个做法...here 第三题: 后缀数组+单调栈.后缀数组我写的是nlogn的,如果写的是O(n)的话,时间复杂度就是O(n)的了.(但是mato说求sa就会超时,弱菜不会后缀自动机,表示正在学习中(・_・;))…
第一题,好吧这是个dp.(搜素也能在BZOJ上卡过). 第二题,BFS搜索碰到的立方体面数,智硬没有想到... 第三题,其实一看就有思路,但关键是求x坐标不交的矩形对数+y坐标不交的矩形对数 - x,y都不交的矩形对数.于是用dp维护即可.…
描述:给定一张图(n<1000,m<5000)求有多少点对u,v有不重复经过其他点,共经过k个点的路径.(k<=7) 这个做法应该不是正解吧..顺便说下SDOI的几道题在BZ上都要卡常数真是哭瞎了QAQ 然后我们知道k这么小,考虑下每个k怎么乱搞吧... k=2:直接枚举每条边就行啦 k=3:枚举中间点,然后再考虑两端端点O(m^2) k=4:枚举两边的点,然后枚举边考虑中间的两个点是否联通O(m^2) k=5:枚举夹在中间的两个点,然后记录所有可能的中间点数目tot,然后枚举外面的两点…
来自FallDream的博客,未经允许,请勿转载,谢谢. 和ditoly组队打VK-Cup,起了个名字叫Vegetable Chicken(意思显然),然后昨天我做AB他切C 很不幸的是.....我写的两题都挂了......坑队友了...A被疯狂卡精度  B简单计算几何瞎写挂了  GG 滚去外卡赛 A.Voltage Keepsake 你有n个东西,每个东西每秒钟消耗ai的能源,初始有bi的能源.你还有一个充电器,每秒钟可以充p的能源,问最多多久之后才有东西爆零.n<=100000 直接二分呗.…
Day0 一大早就起床,结果忙活了整整一上午. 12:20从gryz出发,路上发现把耳机和笔忘另一个背包里了(都怪老爸非得让我换背包),15:30差不多就到山师了. 山师也是蛮漂亮的,花开得挺好.到处是牵着手的小情侣.啧啧啧~.恰逢清明,给他们烧柱香吧 一时间难以表达内心的欢愉(第一次带着这么轻松的心情来考试,舒服). 16:00到宾馆安排房间,魏老师把我叫过去问:"你跟孟老师一个房间吧".顿时 "好吧"(假笑...),我还能怎么说! 然后还只有一张房卡!!你交点押…
江苏省省队一共13个名额,去掉女生名额, 按1/3校内限制,我们南外只有4个名额, 在noip爆炸(占比35%),省选一轮爆炸(占比40%),(此时蒟蒻在校内排不进前10...) 总算在省选二轮(占比25%)中以rk2的成绩翻身进了B队. 我校其他3个人分别是FIZZYDAVID,diamond_duke,ohweonfire3位预备队选手(不出意外) 兴奋之余感觉自己的压力山大,努力吧,即使道路渺茫,也不应该影响脚步的坚定! Orz AprilGrimoire ugly2333神仙! 总体说这…
这套题实在是太神仙了..做了我好久...好多题都是去搜题解才会的 TAT. 剩的那道题先咕着,如果省选没有退役就来填吧. 「SDOI2017」龙与地下城 题意 丢 \(Y\) 次骰子,骰子有 \(X\) 面,每一面的概率均等,取值为 \([0, X)\) ,问最后取值在 \([a, b]\) 之间的概率. 一个浮点数,绝对误差不超过 \(0.013579\) 为正确. 数据范围 每组数据有 \(10\) 次询问. \(100\%\) 的数据,\(T \leq 10\),\(2 \leq X \l…
目录 计算几何✔ DP 斜率优化✔ 四边形不等式✔ 轮廓线DP✘ 各种分治 CDQ分治✔ 点分治✔ 整体二分✔ 数据结构 线段树合并✔ 分块✔ K-D Tree LCT 可持久化Trie✔ Splay fhq Treap 虚树 可并堆 左偏树* 数学,数论 CRT 扩展CRT Lucas 扩展Lucas 杜教筛✔ Min25筛 莫比乌斯反演✔ FFT,NTT FWT BSGS Miller Rabin* Pollard Rho* Catalan数 Stirling数 高斯消元 拉格朗日插值✔ 单…
题面: 题解: T1: 毕竟是tg膜你,不会太难 就是一道简单贪心 首先,对于a<=b的所有物品,一定是贪心的按照a从小到大放入. 先假设剩下的物品可以按照某种顺序放进去,那么可以得到一个最终空间(如果最终空间<0那么一定不可行). 之后可以看成是从结束状态往回还原,还原一个物品需要扣掉b的空间,再加上a的空间,由于b>a所以是一个和前面一样的问题,按照b从小到大排序即可. #include <bits/stdc++.h> #define N 100005 #define l…
虽然一试很惨但是二试还是要来玩一下的 Day 0 到余姚了,然后到余姚边上的宾馆住来下来 顺便一问老师们对边上是不是有什么误解-- 吃完晚饭就回宾馆颓了 话说半夜真刺激--住隔壁那一位手突然骨折了,本来十点钟就睡了结果突然被叫醒然后一直折腾到0点才睡--(虽然我被叫醒之后差不多就是在旁边看人家冷静地叫救护车冷静地处理事情然后我喊喊加油的--) Day 1 早上讲课,啥都没听懂 然后往后看了看看到加藤了 下午讲课,还是啥都没听懂 然后shadowice居然坐到我右边了,似乎题目都直接切掉了的样子…
day0 高铁上颓了一部电影,然后闭上眼睛就到了 醒来之后发现被绑了艹,袖子被打了个结,搞了 \(20\) 分钟才解开,真想把绑我的人吊起来 \(xxx\) 公交车上碰到一位长者,被教育了一顿 长者:"你们大学生呐,戴着一副眼镜,肯定不是读书读出来的,玩游戏玩多了吧?" 我:"......嗯" 长者:"你们这样出去之后,天天啃父母钱,也要有一点自尊啊" 我:"......嗯" 长者:"你们老师有没有教过你们自尊是什么…
没进省队qwq 技不如人,甘拜下风…
Problem You are given an N x N matrix with 0 and 1 values. You can swap any two adjacent rows of the matrix. Your goal is to have all the 1 values in the matrix below or on the main diagonal. That is, for each X where 1 ≤ X ≤ N, there must be no 1 va…
差不多写完了,然鹅去长郡学习前忘在机房电脑里了 总之是咕了…