纪念一下我的 AC 代码(轻触查看) #include<bits/stdc++.h>#defineint long longusingnamespacestd;inlineintread(){intw=1,s=0;charch=getchar();while(!isdigit(ch)){if(ch=='-')w=-1;ch=getchar();}while(isdigit(ch)){s=s*10+(ch-'0');ch=getchar();}returnw*s;}constintmod=1e9+...
csp-s模拟6 A. 一般图最小匹配m 小于n2 所以对原数组排序后做差分,差分后的数不能选相邻的,设 fi,j,0/1 表示前 i 个,选了 j 个,第 i 个选没选直接dp 求最小值就行点击查看代码 #include<bits/stdc++.h> const int maxn=5001; using ...
很明显,由于初始的序列有序,最小值仍然会是 a1,但是最大值会发生变化。 通过手动模拟一下运算过程可以发现,am一定是在 t=0 时刻的次大值和最大值之间。 令p, q 分别为 t=0 时刻的次大值和最大值,手推一下 p,q 的序列有: ·t=0 ,序列为 p...
小学6年级开始学oi,当时跟学校一个信息老师学的,当时我们学校也就十多个人学吧。只学了一点点基础知识,几乎没接触过算法。 初一打csp-j初赛四十多分没过。 之后学校高薪聘请了一个教练,又学了一年,学的也还行,学到初二差不多普及+/提高-的水平,去年校内经常打模拟赛,本来不出意外的话csp-j2等左右,s可能不...
全国提高组 CSP-S 初赛模拟试题 (6)一、单项选择题 (共15题,每题2分,共计30分;每题有且仅有一个正确选项)1) 下列C++表达式,值最大的是( ) 。 A.'Z'-'A' B.52%53>>1 C.(rand()-rand()+1)%26 D.20+15%28/3 查看答案 2) 下列属于解释执行的程序设计语言是( )。 A.C B.C++ C....
CSP-S模拟赛6 T1.玩水 一道非常简单的结论题(但是赛时最后半个小时才想出来)。首先考虑两个人的情况,显然只要有一个岔路就可以了。如图: abbcabbc 像这样的c点,我们把它称为一个岔路点。 以此类推,三个人只需要两个岔路点就行。但是分为两种情况:...
CSP-S模拟6 T1 玩水 本来能拿八十分的,但是file error了,nnd 赛时的做法没有考虑在同一行但不相邻的,只算了下前缀和,于是会误判。 点击查看代码 #include<bits/stdc++.h>typedeflonglongll;typedefunsignedlonglongull;typedefdoubledb;typedeflongdoubleldb;#definefre(x) freopen(#x".in","r",stdin),...
考虑了L=R=n(n+1)2的分数,想到了[AGC005B] Minimum Sum,会了个O(nlogn)处理区间左右端点的情况。 写完后大概2.5h了,Sorato 早已经过掉 T1 和 T2,很难绷,又去想 T1,还是不会k=1。 T3很像错排问题,但是没有多想,直接写了个O(n!)的做法。
CSP-S模拟6 从今往后,教室里再也没有我们的一席之地了**希望我高中毕业之前再也不要回去*** A. 玩水 针对n=2的数据点思考了一下,发现了对角线这个事,于是我就判断的一下能找到两个对角线就好了,但其实它有条件! 因为只能往右下走,不满足以上条件根本就过不去,还有上下相邻的图题解没有画,diy画一下吧...
核心代码: voiddfs(intx,intfat){siz[x]=1,g[x]=0,f[x]=-1e18;for(autoy:e[x]){if(y==fat)continue;dfs(y,x);siz[x]+=siz[y];if(siz[y]>=k) g[x]++;}}voidDP(intx,intfat){intmx=-1e18;for(autoy:e[x]){if(y==fat)continue;DP(y,x);f[x]=max(f[x],f[y]+g[x...