摘要:
Problemset - Codeforces 考虑这些被释放的,值一定相同,并且等于区间gcd 于是用st表询问区间gcd,map套二分实现区间里某个数字出现次数 int n,a[100010]; int f[100010][20],lgn[100010]; map<int,vector<int>
阅读全文
posted @ 2024-01-01 17:27
zzuqy
阅读(85)
推荐(0)
摘要:
浅显的做法是二分+主席树,主席树维护区间里pre都落到了哪。复杂度nlogn^3 int tot,lc[2000000],rc[2000000],c[2000000],pre[100010],rt[100010],n; int build(int x,int l,int r,int d) { tot
阅读全文
posted @ 2023-04-12 11:16
zzuqy
阅读(210)
推荐(0)
摘要:
链接 考虑线段树维护区间里已配对的括号数,左边还没配对的右括号数,右边还没配对的左括号数。 区间询问,合并两个子区间即可。 int n; char s[1000010]; struct node { int c,l,r; }o[4000010]; node merge(node l,node r)
阅读全文
posted @ 2022-11-12 11:10
zzuqy
阅读(221)
推荐(0)
摘要:
为了解决树上子树修改的问题,我们引入了树的dfs序:在树上dfs时,按dfs到的前后顺序给每个点设置dfn[x]表示x是第dfn[x]到达的 由于子树内的点的dfn连续,我们将点权按照dfn顺序放在序列上,于是子树x全体修改等价于对区间[dfn[x],dfn[x]+siz[x]-1]进行修改,例题如
阅读全文
posted @ 2025-06-02 11:13
zzuqy
阅读(20)
推荐(0)
摘要:
先讲一个问题 对于给定的,斜率单调的函数f(x)和一个k,请问y=kx+b和f(x)的切点下标 由于f(x)斜率单调,我们可以二分横坐标,计算f(x)的斜率,与k进行比较来看二分怎么调整 #include<bits/stdc++.h> using namespace std; typedef lon
阅读全文
posted @ 2025-05-14 18:45
zzuqy
阅读(22)
推荐(0)
摘要:
比赛链接:https://ac.nowcoder.com/acm/contest/106899 我是捧杯的梦想 的QY2002 ANo idea 队友写的,模拟题,遇到2024修改一下即可 #include<bits/stdc++.h> #define maxn 1000010 using name
阅读全文
posted @ 2025-04-22 15:46
zzuqy
阅读(28)
推荐(0)
摘要:
首先小小容斥一下,用1~r的减去1~l-1的。 1~r的,可以想到数位dp 设f[len][pre][mod]表示从低位数第len位,当前数字的值%2450为pre,当前用过的数字的lcm为mod的方案数 使用limit表示是否贴着上界 #include<bits/stdc++.h> using n
阅读全文
posted @ 2025-02-16 15:42
zzuqy
阅读(10)
推荐(0)
摘要:
1 不同角度 问题描述 在生活中,我们总是根据数值的大小来判断两个数字的大小关系。例如,9999 总是小于 100100,999999 总是小于 10001000。但如果我们换一个角度,将 999999 和 10001000 看成是两个数字字符串,并用字典序来比较它们的大小,那么此时,999999
阅读全文
posted @ 2024-10-25 09:16
zzuqy
阅读(130)
推荐(0)
摘要:
PTA | 程序设计类实验辅助教学平台 (pintia.cn) L1-097 编程解决一切L1-098 再进去几个人L1-099 帮助色盲L1-100 四项全能L1-101 别再来这么多猫娘了!L1-102 兰州牛肉面L1-103 整数的持续性L1-104 九宫格 L2-049 鱼与熊掌L2-050
阅读全文
posted @ 2024-04-21 11:29
zzuqy
阅读(1683)
推荐(0)
摘要:
按结尾数字排名进行的插入类dp T1 AT_dp_t Permutation 有一个长为 \(N\) 的正整数排列。给定一个由 < 和 > 组成长为 \(N-1\) 的的字符串。 对于任意满足 \(1 \le i \le N-1\) 的字符 \(s_i\),如果 \(s_i\) 是 < 则 \(P_
阅读全文
posted @ 2024-01-17 17:19
zzuqy
阅读(84)
推荐(0)
摘要:
A 模拟题 首先跑一遍,得到校排名 然后对两个比赛的校排名进行合并即可 #include<bits/stdc++.h> using namespace std; int n,m; map<string,int>o; string s[10010]; vector<string>a,b; int ma
阅读全文
posted @ 2023-09-17 18:33
zzuqy
阅读(2019)
推荐(1)
摘要:
晚来了一小时,终榜14名,血亏 https://ac.nowcoder.com/acm/contest/61132 A题不会,我选择oeis n=int(input()) print(n*(n+1)*(n+2)//6%1000000007) python代码 B题考虑线段树f[x][i][0]表示如
阅读全文
posted @ 2023-07-12 17:23
zzuqy
阅读(184)
推荐(0)
摘要:
首先我没参加机试,所以我都是口胡的做法,大概率能对吧 简单模拟,双指针或者什么的搞一搞,使用getline输入 string s; int n; void work() { getline(cin,s); n=s.length(); for(int i=0;i<n;i++) { int j=i; w
阅读全文
posted @ 2023-07-01 12:40
zzuqy
阅读(738)
推荐(0)
摘要:
https://ac.nowcoder.com/acm/contest/59007 A 假设数字n有len位 则小len的长度,每个都有九个方案。 长度和len一样的,至少有n[0]-1种方案 n[0]n[0]n[0]...的这个方案暴力地跑一遍看看是不是小于等于n即可 #include<bits/
阅读全文
posted @ 2023-05-26 21:53
zzuqy
阅读(208)
推荐(0)
摘要:
A 考虑固定左端点,右端点向右走的过程中集合不断变大,但是只会变大m次。所以大胆向右跑,复杂度nmlog 用int128存一下集合状态牛客神机,没加优化的代码1.7秒就过了。。。赛场上这个代码还要优化 #include<bits/stdc++.h> using namespace std; type
阅读全文
posted @ 2023-05-22 18:24
zzuqy
阅读(576)
推荐(0)
摘要:
https://codeforces.com/gym/104354 A 注意到a串最大长度也就26,所以可以枚举a串,判断剩下的串是不是回文的。 #include<bits/stdc++.h> using namespace std; typedef long long ll; ll read()
阅读全文
posted @ 2023-05-11 15:38
zzuqy
阅读(1762)
推荐(2)
摘要:
1计算括号对 例如(()) 将其视作(a^1+a^2)*(a^-3+a^-4) 等于a^-3+2*a^-2+a^-1 这里a^-3的系数就是距离为3的左右括号的对数,a^-2的系数为距离为2的左右括号的对数 使用fft加速多项式乘法即可通过。 #include<bits/stdc++.h> usin
阅读全文
posted @ 2023-04-02 21:47
zzuqy
阅读(897)
推荐(0)
摘要:
比赛链接:CodeTON Round 2 (Div. 1 + Div. 2, Rated, Prizes!) 自闭了。A题是可选删前两个数中的一个,所以等价于在问a中是否存在长为m-1的后缀等于b的后缀,且b[1]在之前出现过就行。B可以贪心的维护当前选的点的区间,如果区间不得不改变就ans++,区
阅读全文
posted @ 2022-08-01 09:37
zzuqy
阅读(67)
推荐(0)
摘要:
D2卡空间,但是最后两三分钟的时候优化代码过去了,甚至比D1用的空间还小。 不多不少的2000分,快乐。所以说,不要轻言放弃,万一最后过了呢。
阅读全文
posted @ 2022-07-19 08:46
zzuqy
阅读(109)
推荐(0)
摘要:
D题是输出n的阶乘对ull自然溢出的结果。考虑到阶乘在乘的时候有很多2,所以算到某个数后2的次数达到了ull的2的数量就会永久变成0.于是等于0后直接break即可。 #include<bits/stdc++.h> using namespace std; int main() { unsigned
阅读全文
posted @ 2022-03-27 18:15
zzuqy
阅读(231)
推荐(0)
摘要:
Dashboard - 2021 ICPC Gran Premio de Mexico 1ra Fecha - Codeforces 我前期做的还行,后期想不出来难题了,惭愧。 L - Leonel and the powers of two 一个递归的式子,根据题意模拟即可,开一个返回值为stri
阅读全文
posted @ 2021-09-11 19:35
zzuqy
阅读(453)
推荐(0)
摘要:
B - Buffoon 读入n和vi,如果有vi大于v1输出N,v1大于等于其他vi输出S。 #include<bits/stdc++.h> using namespace std; typedef long long ll ; int read(){ int x;scanf("%d",&x);re
阅读全文
posted @ 2021-09-05 07:59
zzuqy
阅读(100)
推荐(0)
摘要:
链接:https://ac.nowcoder.com/acm/contest/18462/F来源:牛客网 Dia and Ruby take turns playing a game using an n x n square chocolate bar. Each turn, the curren
阅读全文
posted @ 2021-08-26 19:14
zzuqy
阅读(586)
推荐(1)
摘要:
昨天进行了第二次月赛,紧张刺激,暴露了我的无数问题,八道题第七名的成绩也算是对我能力的体现了。 (要不是能看代码我就不写总结了) 考试前和柴嘉浩杨宇航等人聊了聊天,当时就发现腿有点软,有点激动了。电脑解锁之后bits/stdc++.h打错了两三遍。环境倒是没啥好调的,写一个python的A+B了事。
阅读全文
posted @ 2021-05-31 21:57
zzuqy
阅读(166)
推荐(0)
摘要:
重现赛过了三道题,我做出来了F题,其他题面都看了看没想到思路~ 挨个看题意看到了F,题意不就n个点的树,每个点有初始点权,需要维护m次操作:操作1:u到v的路径上的点权变成w。2:u到v的路径上的点权加w。3:u到v的路径上的点权乘w。4:求u到v的路径上的点权立方和。树上路径我会lca和树剖,要做
阅读全文
posted @ 2021-04-21 12:55
zzuqy
阅读(104)
推荐(0)
摘要:
众所周知,我们一般应该有歧义的语句,但有歧义的语句也是有研究的乐趣的。 众所周知,printf从右向左“入栈”并边出栈边输出。 通过简单的控制变量法我发现: printf里的多个全局变量i=,i=...会正确的从右向左取每次i赋到的值输出。(所以以下我们都考察局部变量) printf里的多个局部变量
阅读全文
posted @ 2021-03-15 20:29
zzuqy
阅读(386)
推荐(0)
摘要:
链接 20年11月27日的比赛了,一共20题,当时写了十七题rank30,现在拿出来把它整理一下吧。 A找一下规律。前三行:第i行输出i-1个空格和V和2*(n-i)-1个空格和V和换行,最后一行输出3个空格和一个V,循环搞定。 #include<bits/stdc++.h> using names
阅读全文
posted @ 2021-01-18 15:24
zzuqy
阅读(165)
推荐(0)
摘要:
多重循环的break: 对于多重循环,如果在最里面的循环写if+break并不能停掉全部的循环.有一种方法可以直接让多重循环停掉: for(int i=1;i<=m;i++) for(int j=1;j<=n;j++) for(int k=1;k<=q;k++) { if(A)//A是判断停下来的语
阅读全文
posted @ 2020-08-21 22:40
zzuqy
阅读(193)
推荐(0)
摘要:
先声明一个函数int rev(int x)返回x翻转后的数. 在回家的路上想到了是不是可以直接读入l,r,对于中间的每个数i,把rev(i)存进数组中,对数组排序,从小到大输出rev(a[i]),多快,还省事.用啥结构体啊还要写mycmp,给树神在QQ上说了说. 过了几个红绿灯,我突然想到了样例22
阅读全文
posted @ 2020-08-17 22:54
zzuqy
阅读(184)
推荐(0)
摘要:
新高一第二期培训开始了,虽然不是我的班也来快乐了.早上来的时候见到了新高一去军训的场面,还挺感动的. 然后上午并没人问我,我就在校oj刷题,一上午整了三道,美滋滋. p1802一看就是一个动态规划.考虑每个树能取的状态和前一个树相关,而且不止与前一个树高度相关,还和前前一个树相关.所以我设了四个状态
阅读全文
posted @ 2020-08-17 13:19
zzuqy
阅读(213)
推荐(0)
摘要:
一切的开始是同学们希望我找到一个自动打卡的方法.我想了一圈后发现可以写脚本模拟打卡. 用免root自动化助手,研究了半小时后发现真是简单,然而我的破红米四不支持点击屏幕,非要Android 7.0以上的才能做到.于是中午又用我的新手机(来自zz)试了半小时,最后成功了,发了个说说庆祝然而应该没有人会
阅读全文
posted @ 2020-04-05 20:41
zzuqy
阅读(244)
推荐(0)
摘要:
高考报名的时候报完名的表要打印出来并签字交给学校.这个时候那些去网吧/只有电脑没打印机的人就会感到难办,毕竟打印机普及率低,去打印店登录平台并打印又害怕信息泄露,这个时候该怎么办呢? 首先我们需要用谷歌浏览器登录报名,然后像模像样的点"打印".在弹出的窗口中调整"目标打印机". 弄成这个 然后点保存
阅读全文
posted @ 2019-12-08 14:22
zzuqy
阅读(1040)
推荐(0)
摘要:
文化课选手见到了一道题。 f(n)表示正整数n的所有因数中最大的奇数,例如:12的因数有1,2,3,4,6,12,则f(12)=3;21的因数有1,3,7,21,则f(21)=21. 考虑这个函数的性质? 一.f(n)=f(2n). 二. f(n/2),n为偶数时 f(n)= n,n为奇数时. 三.
阅读全文
posted @ 2019-12-03 21:22
zzuqy
阅读(216)
推荐(0)
posted @ 2019-08-17 13:52
zzuqy
阅读(156)
推荐(0)
摘要:
更具体的. 一共考了四次重大的考试吧. 2018 HAOI爆零.啥都不会,没啥好说的. 2018 NOIP day1 T3挂掉.用Mingw写代码,忘了加万能库就直接交了.丢了55分. 2019 NOI WC T3打错文件名.oldcomputer1.out ~ oldcomputer5.out写成
阅读全文
posted @ 2019-04-03 15:07
zzuqy
阅读(470)
推荐(1)
摘要:
昨天还是前天,我看了一眼题,说:SPFA跑负环! 然后看了看我的代码,发现好像不是很正确.看了看我的时间和谷神的时间,好像很优秀啊. 枚举点进去dfs,对于点x,如果能更新连向的点的dis就更新,并判断是否"来过"这个点了.如果来过说明是在一个负环里了,return并输出"YES",否则dfs这个点
阅读全文
posted @ 2019-03-20 19:48
zzuqy
阅读(146)
推荐(0)
摘要:
干网络流! 之前刷过一点校oj的网络流,现在忘得差不多了,开始在loj刷一下网络流24题。 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int MAXN=210,MAXM=5010; char bu
阅读全文
posted @ 2019-03-18 18:07
zzuqy
阅读(258)
推荐(0)
摘要:
我又开新坑啦:QTREE系列. 刚开始以为QTREE就是LCT,然后发现第一题是个树链剖分,于是以为QTREE就是树链剖分.写完后发现第二题是个树上倍增. 综上,QTREE就是树上询问的一些题. 来源:http://172.20.6.3/Categories.asp?page=11&order=AS
阅读全文
posted @ 2019-03-15 15:30
zzuqy
阅读(250)
推荐(0)
摘要:
不,你想多了,我并没有发明. 动态树?我会LCT! 然后加上在线和可持久化的前缀,这道题就变得面目可憎了起来. 对于一个森林,刚开始没有边.你需要维护下面的操作. 操作1:给定x,y,令x的父亲为y. 操作2:给定t,x,k,求第t个版本中x的第k个祖先.如果没有输出0. 操作3:给定t,x,求第t
阅读全文
posted @ 2019-03-08 17:32
zzuqy
阅读(234)
推荐(0)
摘要:
线段树合并就是把两个维护相同区间的线段树合并到一块. 什么叫维护相同区间?就是每次操作的最大的那个区间是一样的,根节点维护的区间一样,根节点的左儿子维护的也一样,右儿子维护的也一样,左儿子的左儿子.... 显然只需要建树的时候都建成一样的就好了.一般我们采用动态开点. 由于线段树合并的均摊复杂度是l
阅读全文
posted @ 2019-03-08 06:45
zzuqy
阅读(279)
推荐(0)