06 2022 档案

摘要:思路 考虑先对各点黑白染色,然后对于相邻的点连边建出二分图。 如果这个二分图有完全最大匹配(即每个点都匹配到了),那么先手必败,因为无论选那个点,后手只要向这个点匹配的另一个点走就行了。 如果是不完全最大匹配,那么先手必胜。 所以先手只要选到不一定在最大匹配中的点开始就一定赢,因为无论接下来后手走到 阅读全文
posted @ 2022-06-29 21:52 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:思路 第一问 第一问与YbtOJ「图论」第1章 二分图匹配 J. 祭祀一模一样。 考虑处理出原 dag 图的两两点之间能否可达(可用 Floyd),然后题中是求最大的若干点之间没有两两可达的点对。 那么建出二分图之后,发现如果出现一对匹配,那么相当于这两个点里面有一个不能选了,所以答案就是总的点数- 阅读全文
posted @ 2022-06-28 21:26 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:思路 考虑处理出原 dag 图的两两点之间能否可达(可用 Floyd),然后题中是求最大的若干点之间没有两两可达的点对。 那么建出二分图之后,发现如果出现一对匹配,那么相当于这两个点里面有一个不能选了,所以答案就是总的点数-最大匹配。 代码 #include<bits/stdc++.h> using 阅读全文
posted @ 2022-06-28 20:49 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:思路 会发现要求一个最大的完全子图(每个点两两之间有连边),所以考虑把建出原图的反图,然后每个点两两之间有连边就转化成为了每个点两两之间没有连边,也就是二分图的最大独立子集,是需要用总点数-最大匹配即可。 代码 #include<bits/stdc++.h> using namespace std; 阅读全文
posted @ 2022-06-28 19:50 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:思路 发现模板串最多只有一个*,所以考虑对于一个含有*的模板串,相当于链接了两个不含*的模板串。 所以我们先把所有的串转换为不含*的模板串,然后两两判断是否可以连边(因为只能有一个*,所以判断依据就是 $\operatorname{popcount}(u \operatorname{xor} v)= 阅读全文
posted @ 2022-06-28 19:31 A_zjzj 阅读(40) 评论(0) 推荐(0) 编辑
摘要:思路 直接按照要求的走法可以建出一张 dag 图,发现就是跑一个最小路径覆盖,参见洛谷P2764,题解。 只需要用二分图匹配,每一次连接了一对匹配,相当于合并了两条路径(单个点也认为是路径),所以要让路径总数最小,就要让匹配的数量最大,由于是路径,所以每个点的入点和出点都最多只能连两条边。 代码 # 阅读全文
posted @ 2022-06-28 08:31 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:思路 只需要用二分图匹配,每一次连接了一对匹配,相当于合并了两条路径(单个点也认为是路径),所以要让路径总数最小,就要让匹配的数量最大,由于是路径,所以每个点的入点和出点都最多只能连两条边。 代码 #include<bits/stdc++.h> using namespace std;typedef 阅读全文
posted @ 2022-06-27 21:24 A_zjzj 阅读(47) 评论(0) 推荐(0) 编辑
摘要:思路 问题转化为了在一张 dag 图上求出最小路径覆盖,见洛谷P2764,题解。 只需要用二分图匹配,每一次连接了一对匹配,相当于合并了两条路径(单个点也认为是路径),所以要让路径总数最小,就要让匹配的数量最大,由于是路径,所以每个点的入点和出点都最多只能连两条边。 代码 #include<bits 阅读全文
posted @ 2022-06-27 21:23 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:思路 会发现建完二分图之后,就是求哪些边一定在二分图的完全匹配当中的。 那就只需要求出这条边如果去掉,还能不能跑出完全匹配,如果不能了,那么这条边就一定在完全匹配中,否则就不在。 代码 #include<bits/stdc++.h> using namespace std;typedef long 阅读全文
posted @ 2022-06-26 18:07 A_zjzj 阅读(4) 评论(0) 推荐(0) 编辑
摘要:思路 发现可以先建出一张图,每个节点表示每个订单,之间的连边 uv 表示同一辆出租车能否先完成 u 号订单,再去完成 v 号订单。 这样,问题转化为了在一张 dag 图上求出最小路径覆盖,见洛谷P2764,题解。 只需要用二分图匹配,每一次连接了一对匹配,相当于合并了两条路径(单 阅读全文
posted @ 2022-06-26 17:59 A_zjzj 阅读(14) 评论(0) 推荐(0) 编辑
摘要:题目大意 给定 N 个长度为 L 的 01 匹配串 aM 长度为 L 的 01 禁用串 b,要求找到一个不是禁用串的长度为 L 的 01 字符串 c,使得 \(\sum\limits_{i=1}^N\sum\limits_{j=1 阅读全文
posted @ 2022-06-25 16:14 A_zjzj 阅读(86) 评论(0) 推荐(0) 编辑
摘要:因为之前没有看到过既有负数,还可以压位的高精度运算,所以我就自己发一篇(原来这么简单,我1h就写好了) 如果有什么bug,请在评论区回复或私聊我,我周末会看的。 本模板支持+,,×,÷,mod,ab,abmodx ### 模板 ```cpp #inclu 阅读全文
posted @ 2022-06-11 15:54 A_zjzj 阅读(47) 评论(0) 推荐(0) 编辑
摘要:int,char,double,long long,string,char[] 都可以输入输出 double 的输出方法 ```cpp double x=123.123;fout using namespace std;typedef long long ll; struct Precision{i 阅读全文
posted @ 2022-06-11 15:54 A_zjzj 阅读(183) 评论(0) 推荐(0) 编辑
摘要:题目传送门 思路 一看就是构造题,显然要分成若干块 5×5 的小块,然后发现对于一个小块中,只有最中间的那格可以从别的小块中一步跳进来。 然后我们打一个爆搜,打出从当前小块的中间走到各个方向相邻的小块的方案。 这样就可以在小块间移动了。 由于我们需要把所有的点都绕一遍,那么显然是在 阅读全文
posted @ 2022-06-11 15:53 A_zjzj 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题目传送门 题目大意 给定一个 n 个点的树,每个点有权值 vi,每条边也有权值 wj,对于树上一条简单路径,它的权值就是路径上(包括两端点)min{vi}×wj,求最大的路径权值。 思路 显然可以发现可以将每个点按照 \(a_i 阅读全文
posted @ 2022-06-11 15:52 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:题目大意 选出一个字符串序列 s,使得对于每一个 si,都是原串的子串,且每个 sisi1 中都出现过至少两次,求最大的序列长度。 思路 发现其实可以做到让所有选出的字符串都是上一个字符串的后缀,因为如果后面留了一个尾巴,那么前面的字符串把这个尾巴砍 阅读全文
posted @ 2022-06-11 15:47 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目大意 给定 n 个主串和 m 个询问串。 对于每个询问串,求出最大的 l,使得存在一种将当前询问串拆分成若干个长度 l 且在任一主串中出现过的子串的方案。 思路 蒟蒻还是不会广义后缀自动机,所以我们就用 SA + st 表 + 二分 + 单调队列解决这道问 阅读全文
posted @ 2022-06-11 15:46 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:题目大意 给定 n 个字符串,求出每个字符串只属于该字符串的本质不同的非空子串的个数。 思路 如果没有做过这道 SA 入门题《不同子串个数》,那么请先了解这道题的 SA 做法。 首先老套路,把所有字符串拼接在一起。 然后单独考虑一个字符串 i,首先求出这个字符串的每一个后缀有多少个前 阅读全文
posted @ 2022-06-11 15:41 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:思路 开始的时候想用倍增求 k 级祖先卡过去,然后就在考虑倍增数组 f[N][K],究竟是哪一维放在前面要快一点,所以都打了一下。 结果发现,一个会在 #9 TLE,另一个在 #8,#10 TLE,于是分成两类按照 2:1 的随机分布运行,然后就可以通过这道题了,最快用时:8.74s。 代码 阅读全文
posted @ 2022-06-11 15:40 A_zjzj 阅读(28) 评论(0) 推荐(0) 编辑
摘要:题目大意 给定 n 个模板串,以及 m 个查询串,依次查询每一个查询串是多少个模板串的子串。 思路 蒟蒻不会广义 SAM,所以只能用 SA + 莫队的高复杂度笨重算法通过了。 首先把每个模板串和查询串拼接在一起(中间用不同的字符隔开),然后跑一遍 SA,对于每个查询串,记 i 阅读全文
posted @ 2022-06-11 15:39 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:思路 蒟蒻不会 SAM,所以只好用 SA + Manacher + st 表 + set + 单调栈 + 双指针的笨重做法了。 首先处理出每个点为中心的最长回文串长度 oddi,以及以 ii+1 为中心左右对称的最长回文串长度 evni,这一步可以用 Man 阅读全文
posted @ 2022-06-11 15:38 A_zjzj 阅读(50) 评论(0) 推荐(0) 编辑
摘要:day1 上午 先看了 PKUSC 2022 的开幕式,看了北大的介绍之类的,感觉似乎在损清华? 然后试机测试了一下,发现放了一道去年考的 T1。 下午 考试开始,先看了 3 道题,然后感觉 T3 似乎是个网络流,但是我不想打,就先打了一个二分+乱搞贪心,竟然可以拿 22pts(\( 阅读全文
posted @ 2022-06-11 15:37 A_zjzj 阅读(85) 评论(0) 推荐(1) 编辑
摘要:思路 对于 T=0 的情况,直接建出后缀自动机,统计一下一个点为开始的字串有多少个,然后从上往下找就可以了。 对于 T=1 的情况,同样建出后缀自动机,统计一下每个字符串的出现次数,和刚刚一样做就好了。 细节不多。 代码 #include<bits/stdc++.h> using n 阅读全文
posted @ 2022-06-11 15:36 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:思路 一看就是差分约束,直接建边就好了。 代码 #include<cstdio> #include<cstring> #include<iostream> #include<queue> using namespace std;typedef long long ll; struct Precisi 阅读全文
posted @ 2022-06-11 15:35 A_zjzj 阅读(26) 评论(0) 推荐(0) 编辑
摘要:前言 ZJOI 王朝复辟???。。。 这次比赛在 5 月 3 号和 4 号,由于 qz 教育局什么五一不调休,正常放完双休回来,刚好比赛的两天就是周二周三,还做好了回来隔离半个月的心理准备,这两天算不了什么。 day0 比赛前一天下午 1 点半出发,坐的小(mian)巴(bao)车(che),虽然只 阅读全文
posted @ 2022-06-11 15:35 A_zjzj 阅读(81) 评论(0) 推荐(0) 编辑
摘要:思路 那就直接摸你就好了吧。 代码 #include<cstdio> #include<cstring> #include<iostream> using namespace std;typedef long long ll; struct Precision{int x;Precision(int 阅读全文
posted @ 2022-06-11 15:32 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:思路 一看这个字符串长度很小,就直接暴力就好了。 然后我们需要一种快速的查看是否有一对大写字符相同的容器。 于是就可以想到用 26 进制+桶,这样就是一一对应了。 代码 #include<cstdio> #include<cstring> #include<iostream> using n 阅读全文
posted @ 2022-06-11 15:31 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:思路 首先一看就是统计有多少不同的字符串。 那么肯定就是用字典树了。 然后如果当前字符串与之前的某个字符串是一样的,那么一定会有使得每一次向下一个节点时,这个节点都是存在的。 最后记得清空。 代码 #include<cstdio> #include<cstring> #include<iostrea 阅读全文
posted @ 2022-06-11 15:31 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:比赛前一天 上午翻了翻打过的模拟赛(其实是翻 cqy 的提交记录发现有原题的),发现洛谷上都有很多紫题,于是贺了自己的代码过了好几道紫题和一道蓝题。 吃完饭简单收拾了一下就上大巴了。 在大巴上和 fls 坐一起,用我的电脑看了电影——《唐人街探案3》(事先下载下来的),还边吃自己带的零食边看电影,零 阅读全文
posted @ 2022-06-11 15:30 A_zjzj 阅读(39) 评论(0) 推荐(0) 编辑
摘要:@(目录) A solution 原题:[ZJOI2006]碗的叠放 显然枚举碗的叠放顺序,然后算一下高度就可以了。 高度的话,就处理出 i 放在 j 上面的增加的高度。 时间复杂度:O(n!×n)O(n!×n2)。 代码 #inclu 阅读全文
posted @ 2022-06-11 15:30 A_zjzj 阅读(39) 评论(0) 推荐(0) 编辑
摘要:更好的阅读体验 题目传送门 Luogu,Codeforces 谈点其他的 这个题目翻译好像有亿点问题,我重新发一波。 给定一个长度为 n 的排列 p。 令其中第 i 个位置的权值为最长的包含 i 的单调区间的长度(不仅要权值单调,而且要连续)。例如,\(p=[4,1, 阅读全文
posted @ 2022-06-11 15:29 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目大意 给你 n 个区间 [li,ri] 以及每个区间的权值 wi,要求选择一些区间出来覆盖区间 [1,m] (要求区间首尾相接),求选择的区间的 w 的极差的最小值。 思路 看到极差的最小值,想到二分,但不会验证,放弃! 然后分析了一下,这个首尾相接 阅读全文
posted @ 2022-06-11 15:28 A_zjzj 阅读(16) 评论(0) 推荐(0) 编辑
摘要:题目大意 给你一个字符串,每次询问区间 [l,r] 最小需要改变几个才能使得这个区间的所有子区间都不是长度至少为 2 的回文串。 思路 首先我们想一想所有子区间都不是长度至少为 2 的回文串长什么样子。 aiai+1 \(a_i\ne a_{i+2}\ 阅读全文
posted @ 2022-06-11 15:27 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目大意 在一个长为 W,宽为 H的房间中(左下角坐标 (0,0),右上角坐标 (W,H)),摆放着一张桌子,其左下角和右上角坐标分别为 (x1,y1),(x2,y2),现在还要继续在房间里面放另一张长、宽分别为 w,h 的桌子,问是否可行,如果可行,输出 阅读全文
posted @ 2022-06-11 15:26 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:题目大意 有一个 2×m 的矩阵,每次从 (1,1) 号点,往下或往右走到 (2,m)。Alice 先出发,把经过的点上的权值清空,然后 Bob 再出发,把经过的点上的权值加起来作为答案。Alice 希望最小化答案,Bob 希望最大化答案,求最后的答案。 思路 首 阅读全文
posted @ 2022-06-11 15:26 A_zjzj 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目传送门 题目大意 给你一张无向图,图中每条边是蓝色或者红色的,让你每次选一个点,就会把与这个点相连的边的颜色反转(红变蓝,蓝变红),求最少步数的方案使得最后所有边的颜色都一样。 思路 好像没有 2sat 的题解,那我就来一发。 首先分类讨论:要么都变成红色,要么都变成蓝色。 如果一条边 阅读全文
posted @ 2022-06-11 15:24 A_zjzj 阅读(43) 评论(0) 推荐(0) 编辑
摘要:@(为了不再被虐,我力争学会… ) 基本算法 枚举 题目链接 完成情况 自我评价 poj1753 Yes 上上等 poj2965 Yes 上上等 贪心 题目链接 完成情况 自我评价 poj1328 Yes 上上等 poj2109 Yes 上上等 poj2586 Yes 上上等 分治法 题目链接 完成 阅读全文
posted @ 2022-06-11 15:24 A_zjzj 阅读(16) 评论(0) 推荐(0) 编辑
摘要:题目大意 你要得到 n 片披萨,有三种披萨可供选择: 一个 6 片,需要 15 分钟 一个 8 片,需要 20 分钟 一个 10 片,需要 15 分钟 求最少需要多少分钟才能至少得到 n 片披萨。 思路 首先看这三组数据,发现一个东西: 阅读全文
posted @ 2022-06-11 15:24 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:@(目录在此) 2021-07-08~2021-07-22总结--zhengjun 7.8 考试过程 一开始看到 A 题,一看就是大水题,按照题目中说的算就行了,但是中途出了点错,调试了一下,发现忘记把角度转成弧度在算三角函数了,然后就可以了。 然后看了 B 题,看起来特别像那个启发 阅读全文
posted @ 2022-06-11 15:23 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目概述: 给你两个长度为 n 的字符串 a,b,你需要找出 b 中有多少个不同的子串是 a 的子序列 思路: 可以枚举 a 中的子串,可是这样可能会有多个相同的子串被算了多次,那么,我们就可以用 Trie 树,然后从根节点开始向下搜,枚举每一个子串, 阅读全文
posted @ 2022-06-11 15:22 A_zjzj 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目大意 其实就是给你 n,让你求这个式子: dprime,dni=1nj=1n[gcd(i,j)==d] 一看就是莫比乌斯反演,开始反演: \(\sum\limit 阅读全文
posted @ 2022-06-11 15:21 A_zjzj 阅读(46) 评论(0) 推荐(0) 编辑
摘要:这道题其实就是一个数位 dp 裸题,就是他这个前缀 0 有一点难处理,所以就多开一维就行了。 代码 #include<cstdio> #include<cstring> #define ll long long using namespace std; ll f[13][2][2][ 阅读全文
posted @ 2022-06-11 15:18 A_zjzj 阅读(22) 评论(0) 推荐(0) 编辑
摘要:一眼数位 dp 答案就是 sum1,rsum1,l1,关键是如何求 sum1,numfi,j,0/1 表示在第 i 位时,上一位填了 j,是否顶到上界(就是比如说在 47 中,一开始选了 4,那么顶到了 阅读全文
posted @ 2022-06-11 15:17 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:首先,我们可以贪心一下,把报废的时间按升序排序。 然后每到一个建筑,如果这个建筑可以修,那么就修了它。 如果不能修,那么就要看了,如果已经修了一个修筑时间大于当前不能修的建筑的修筑时间,那么显然是选当前这个好一点。 代码 #include<cstdio> #include<queue> #inclu 阅读全文
posted @ 2022-06-11 15:17 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:一眼看去就感觉是数位 dp 弱化版 + 路径输出 用 fi,0/1,j 表示在从低到高的第 i 位,填了 0/1,之前填了 j1 的个数。 转移方程式显然就是: f[i][0][j]=f[i-1][0][j]+f[i-1][1][j]; f 阅读全文
posted @ 2022-06-11 15:15 A_zjzj 阅读(55) 评论(0) 推荐(0) 编辑
摘要:题目背景 zjzj 大佬最喜欢的,就是找到一些红的数学题,把他们改变成蓝的,紫的,甚至黑的。 题目描述 有一天, zjzj 大(jù)佬(ruò) 看到了 fxt 蒟(dà)蒻(lǎo)出的一道题 : wangshengjun33 与 \(275307894a 阅读全文
posted @ 2022-06-11 15:14 A_zjzj 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题目传送门 这道题其实直接做就好了,枚举每一个数,把这个数拆分一下就行了。 代码: #include<cstdio> using namespace std; int sum[10001],l,r; int main(){ for(int i=1;i<=10000;i++){ int k=i,cnt 阅读全文
posted @ 2022-06-11 15:14 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:树形 dpfi 表示在编号为 i 的子树中共有多少种方案。 显然,fu=vsonufv+1 后面的那个 1 就是考虑自身不要的情况。最后答案要减掉这个 1 代码 #include<cs 阅读全文
posted @ 2022-06-11 15:13 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:1.leetcode121. 买卖股票的最佳时机--zhengjun 2.leetcode122. 买卖股票的最佳时机 II--zhengjun 3.leetcode123. 买卖股票的最佳时机 III--zhengjun 4.leetcode188. 买卖股票的最佳时机 IV--zhengjun 阅读全文
posted @ 2022-06-11 15:11 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:因为这里有一个冷冻期,这就十分不好处理。 所以我们用 fi,0 表示当前买来了股票,fi,1 表示当前没有股票,处于冷冻期,fi,2表示当前没有骨片也不处于冷冻期。(这个不一定是要在 i 这个点满足条件,也可以在 1i 之间某个值满足这个 阅读全文
posted @ 2022-06-11 15:10 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:用 fi,0 表示到了第 i 天,当前买了股票的最大利润;fi,1 表示到了第 i 天,当前没有买股票的最大利润。(还是不一定要刚好第 i 天满足这个条件,可以 1i 中的某个值满足) 显然,递推式就是 f[i][0]=max(f[ 阅读全文
posted @ 2022-06-11 15:10 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:用 fi 表示 1i 交易一次的最大利润 用 ffi 表示 1i 交易二次的最大利润 class Solution { public: int n,f[100001],ff[100001]; int maxProfit(vector<int>& a 阅读全文
posted @ 2022-06-11 15:09 A_zjzj 阅读(17) 评论(0) 推荐(0) 编辑
摘要:先用 fi,j 表示第 i 次交易,这次交易到 j 的最大利润。 这样 fi 就可以从 fi1 那里直接得到,(参见leetcode123. 买卖股票的最佳时机 III--zhengjun 还要注意一下空间,要滚动 代码 class Solut 阅读全文
posted @ 2022-06-11 15:09 A_zjzj 阅读(24) 评论(0) 推荐(0) 编辑
摘要:思路 因为只有唯一一次的交易次数,所以肯定要在前面选一个小的,在后面选一个大的。 用 minx 维护当前 1i1 的最小值,然后就直接更新答案就可以了。 代码 class Solution { public: int maxProfit(vector<int>& a) { 阅读全文
posted @ 2022-06-11 15:08 A_zjzj 阅读(16) 评论(0) 推荐(0) 编辑
摘要:思路 因为这道题可以交易任意次,所以,只要下一个比上一个大,那么肯定是取下一个更优。 如果从上一个开始买来,那么比原来的方案优了 aiai1,如果从之前的买来,那么还是比原来的方案多了 aiai1 代码 class Solution { public: int 阅读全文
posted @ 2022-06-11 15:08 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:学习sa 这次集训我在考试(楼下机房)中遇到了一道题,结果发现是个sa后缀数组题 然后——我就学了sa后缀数组,学了一个晚上,结果发现,连模板题都是紫色的!!!! 就这样,我就多 A3 道紫题和 1 道黑题。 听北大学长讲课(ljn) 第一天是讲杂题,主 阅读全文
posted @ 2022-06-11 15:07 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:循环队列 template<typename item,const int _size> class cirqueue{ private: item q[_size]; int head,tail; int len; public: cirqueue(){ memset(q,0,sizeof(q)) 阅读全文
posted @ 2022-06-11 15:06 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:一看就不能用求根公式 首先,因为 ai 很大,如果要高精度的话,时间复杂度都过不去。 那么,我们考虑把这个大数取模,这样如果弄出来是零,这个值就有可能是一个根。 这个模数最好是一个大质数,这样正确率会高一点 代码 #include<bits/stdc++.h> #define ll lon 阅读全文
posted @ 2022-06-11 15:06 A_zjzj 阅读(45) 评论(0) 推荐(0) 编辑
摘要:首先,如果 n 个都要选,那么显然,应该先把 b 值大的先选掉,这样浪费最小。 基于这种想法之上,我们就可以先按 b 排个序,然后 dpfi,j 表示在前 i 个中选了 j 个的最大金币数 所以递推式就十分显然,\(f_{i,j}=\max 阅读全文
posted @ 2022-06-11 15:05 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:因为每一条边都要走个遍,所以 如果一个点的入度等于出度,那么在这个点一定不用走路。 如果一个点的入度小于出度,那么肯定还要从其他的点走路到这个点 如果一个点的入度大于出度,那么肯定还要从这个店走路到其他的点 现在,我们只要知道每一个点的入度减掉出度。 比如样例 很显然,让 阅读全文
posted @ 2022-06-11 15:05 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:首先,可以爆搜,不过分比较少。 然后,我们可以算出每条边,然后把边按照距离排个序。就可以转换成线性 dpfi 表示到了第 i 条边最多可以拿到几个点心 但是,还有一点要考虑,如果有一坨边的距离都一样,那么应该取走那条边呢。 所以,我们可以另外开一个数组记录一下就可以了 阅读全文
posted @ 2022-06-11 15:04 A_zjzj 阅读(53) 评论(0) 推荐(0) 编辑
摘要:其实是一道结论题。 因为模完之后一定有 k 个取模后的结果,而每一个取模之后的结果都在 [0,k1]中。 n%1=0。 而 n%2 不能和 n%1 的结果相同,所以n 同理得,n%3=2 n%k=k1 阅读全文
posted @ 2022-06-11 15:03 A_zjzj 阅读(34) 评论(0) 推荐(0) 编辑
摘要:一看题目,搜索题啊。 首先,枚举排列,然后验证是否在同一条斜线上 设有两个点是 i,j 那么如果他们在从左上到右下↘的斜线上,那么一定满足XiYi=XjYj 如果他们在从左下到右上↗的斜线上,那么一定满足Xi+Yi=Xj+Yj 所以打出代码: #include<c 阅读全文
posted @ 2022-06-11 15:02 A_zjzj 阅读(16) 评论(0) 推荐(0) 编辑
摘要:一道哈希题。 因为只有两个关键字,直接用进制哈希。 然后存到一个数组里面,每次边更新答案边哈希 代码 #include<cstdio> using namespace std; int n; char a[100],b[100]; int get1(int i){//对城市开头的哈希 return 阅读全文
posted @ 2022-06-11 15:01 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:看数据可以猜测:这是一道状态压缩的动态规划题 没错。 我们用 fi 表示在 i 状态下最少需要多少节点。 那么转移方程就是: fi=minj&i=jfj+fijlcp(i) 这个 lcp(i) 就是在 i 状态下 阅读全文
posted @ 2022-06-11 15:00 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:其实不难,手推一下就发现规律: Xm(k+1)+1=A1 Xm(k+1)+2=A2 Xm(k+1)+k=Ak Xm(k+1)=A1A2Ak 所以代码就不难了。 #include<cstdio 阅读全文
posted @ 2022-06-11 14:59 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:ndfs 即可,细节见代码 直接用两点间距离公式:d=(x1x2)2+(y1y2)2 看一下能不能从 uv,如果可以的话,就继续搜下去,否则就回溯。 #include<cstdio> #include<cstring> 阅读全文
posted @ 2022-06-11 14:59 A_zjzj 阅读(22) 评论(0) 推荐(0) 编辑
摘要:传送门:主题库/比赛里 题目大意 给你 n 个数,你可以选一个数让他插到原数组中的任意位置,经过多次操作后,使得每一个第 1k 小的数都在 k+1k+n 位置中,每一个第 k+1k×2 小的数都在 k+1阅读全文
posted @ 2022-06-11 14:58 A_zjzj 阅读(8) 评论(0) 推荐(0) 编辑
摘要:一道模拟题 每一次 add 的时候,就不用管直接扔进栈里面,因为你在这个时候排个序不如之后 remove 的时候排序。 然后每一次 remove 的时候。 如果栈顶是当前要出栈的数,那么直接让他出去。 否则,就需要排一次序,把答案加一。 因为这样已经拍过序了,所以之后的已经不用排了,那么就直接把这些 阅读全文
posted @ 2022-06-11 14:57 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:@(暑假刷题记录--zhengjun) 7月份 7.1 P3388 【模板】割点(割顶)tarjan割点模板 原题 7.15 P3371 【模板】单源最短路径(弱化版) 单源最短路SPFA/Dij模板 原题 P1948 [USACO08JAN]Telephone Lines S二分答案+最短路SPF 阅读全文
posted @ 2022-06-11 14:56 A_zjzj 阅读(57) 评论(0) 推荐(0) 编辑
摘要:一道函数递归题 记录一下当前的是第几层和现在要分的数是几(分别用 xy 表示) 然后,每一次从小到大枚举因子,继续递归直到输出的总数到达 105。 #include<cstdio> #include<cmath> #define ll long long using 阅读全文
posted @ 2022-06-11 14:55 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:一道细节题 因为英文和数字很少,所以就枚举要提醒的字母和数字,验证是否可以算出来然后再更新答案。 可以推出来的有以下几种: 已知颜色,数字未知的只剩下一个 已知数字,颜色未知的只剩下一个 最后剩下一个 代码 #include<cstdio> #include<cstring> using names 阅读全文
posted @ 2022-06-11 14:55 A_zjzj 阅读(28) 评论(0) 推荐(0) 编辑
摘要:一道简单的思维题 我们先按照题目中所说: 给定两个正整数 n,m(mn),对于一个 n01 方阵, 其任意 m 阶子方阵中至少有一个元素 “0”,则可以求解这个方阵中的 “1” 的最大数目。 那么显然,每一个 0 都填在 \(( 阅读全文
posted @ 2022-06-11 14:54 A_zjzj 阅读(22) 评论(0) 推荐(0) 编辑
摘要:竟然又没有人做这题了 一道二分题 其实就是要找什么时候这个怪兽被打了 ai 次,可以知道,这是有单调性的,我们就可以二分。 因为 Vanya 一秒打 x 次,那么每 1x 他就打一次,所以我们直接把 mid÷x+mid÷y 阅读全文
posted @ 2022-06-11 14:53 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:一道找规律题 直接找一下规律就可以了。 先算出来后面可以有多少个9,然后枚举第一位是什么,算出有多少答案就可以了。 代码 #include<cstdio> #include<algorithm> #define ll long long using namespace std; ll n,pow10 阅读全文
posted @ 2022-06-11 14:52 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:一道贪心题 为了让这个序列达到中位数且总和最小,那么肯定是中位数越小越好,就让他是 y 。 因为中位数是从小到大排序之后第 n2+1 个数,所以比中位数小的数一共有 n2 。 那么为了 阅读全文
posted @ 2022-06-11 14:52 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:solution 一道bell数题:贝尔数-百度百科 预处理出bell数,我用的这个递推式 Bn+1=k=0nCnk×Bk 然后,如果每个数都有几位是一样的(例如样例每个数第一位和第二位一样,第三位和第五位一样,第三位一样 阅读全文
posted @ 2022-06-11 14:46 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:solution 一道dp好(duliu)题 用fi,j表示前i位模3j最少要删掉几个数 那么转移方程就很显然了: fi,j=min{fi1,j+1,fi1,(jci+3)mod3} 初始化:\(f_{1,0}=1,f_{1,( 阅读全文
posted @ 2022-06-11 14:44 A_zjzj 阅读(47) 评论(0) 推荐(0) 编辑
摘要:solution 一道贪心题。 如果有两个人分别在xy来(x<y且这两个人来的时刻的中间没有其他人) 那么Vasyax+my1这段时间来都一样,那么我们就枚举每一个人,然后看看如果Vasya在这个人之前插进去最少要等多长时间,更新答案就可以了 #include<c 阅读全文
posted @ 2022-06-11 13:55 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:竟然没有人做这道题 solution [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-50N9CEMt-1597798316871)(https://cdn.luogu.com.cn/upload/vjudge_pic/CF774G/5594570290c0b989f3 阅读全文
posted @ 2022-06-11 13:54 A_zjzj 阅读(41) 评论(0) 推荐(0) 编辑
摘要:强连通就是在一个有向图中任何一个点都可以到达除这个点之外的所有点。 然后,在处理的时候,就可以把这一个子图直接变成一个点。 比如说这张图 就可以缩成这张图 原图中的 就是一个强连通 也就是说只要有环,就一定有一个强连通(其实自己一个也算一个强连通) 然后,就是找环的环节~~~~重点 找环,其实就是看 阅读全文
posted @ 2022-06-11 13:52 A_zjzj 阅读(20) 评论(0) 推荐(0) 编辑
摘要:题目背景 zjzjxx玩一个运气游戏,首先,在若干个卡片上各写一个正整数,然后,zjzjxx各选一张卡片,不会让对方知道,不可以相同,再把这两个数拼在一起(\(zjzj选的数放在前面,例如25拼成了25\)),如果这个数是k的倍数,那么zjzj赢,否则, 阅读全文
posted @ 2022-06-11 13:51 A_zjzj 阅读(214) 评论(0) 推荐(0) 编辑
摘要:这个题目名称十分诡异。 然后我可以提供两种做法,复杂度一样,都是O(nlogn)的。 方法一 因为我们每一次使用魔法,就会让那个什么鬼畜的人物多走个ai天,所以就可以贪心,每一次只要取大的就可以了,然后因为每一次都要加在一起看看够不够,所以就可以二分了。 代码 #include<bit 阅读全文
posted @ 2022-06-11 13:49 A_zjzj 阅读(73) 评论(0) 推荐(0) 编辑
摘要:我一开始就打出来了,可是忘记一个很重要的剪枝,就是如果当前的步数已经超过答案的步数就不用搜了,还有就是每一个点的每一种状态都只能走到一次(其实就是走到一个点,之前使用了相同的魔法已经到过这个点)那么也不用搜下去了。 代码 #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2022-06-11 13:48 A_zjzj 阅读(50) 评论(0) 推荐(0) 编辑
摘要:一看,这个就是一个组合数学,如图所示 这样,很容易想到分类讨论,如果x,y在两侧和x,y在同侧。 如果是两侧的话,就可以枚举这两个位置的高度然后用组合数算出来就可以了。然后的话如果在同侧就不用管什么东西,把第x个位置到第y个位置的所有位置都是一样高的,就可以看成一个城市,剩下的左边$ 阅读全文
posted @ 2022-06-11 13:46 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 因为最多只能两个物品一起,所以排个序,然后用两个指针,如果这两个可以,那就两个都要了,否则就只能要大的一个 代码 #include<bits/stdc++.h> using namespace std; int n,m; int a[30001]; int main(){ scan 阅读全文
posted @ 2022-06-11 13:44 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 因为跑和使用魔法不能同时执行,所以可以先处理光光使用魔法,然后再处理跑的情况 代码 #include<bits/stdc++.h> using namespace std; int m,s,t; int f[300001]; int main(){ scanf("%d%d%d",& 阅读全文
posted @ 2022-06-11 13:44 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 用结构体拍个序,然后输出就可以了。 代码 #include<bits/stdc++.h> using namespace std; int n; struct zj{ int x,y,z,sum,num; bool operator < (const zj &a)const{ if 阅读全文
posted @ 2022-06-11 13:43 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看嘛,不就是两遍dp,结果标签上写着个单调队列,我怎么想不出来如何单调队列啊。 于是,就只好打了暴力dp结果A了。 代码 #include<bits/stdc++.h> using namespace std; int n; int a[101]; int f1[10 阅读全文
posted @ 2022-06-11 13:41 A_zjzj 阅读(58) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 我明知正解是枚举每一位是否进位然后用高斯消元来验证是否有解。 可是我偏不!!!! 我偏偏dfs。 剪枝剪枝+剪枝。 剪枝一:从低位的数开始搜索。 剪枝二:枚举每一个字母是什么数的时候从大到小枚举。 剪枝三:因为每一位最多只会进1,所以判断每一位如果不是这样的就直接$return 阅读全文
posted @ 2022-06-11 13:41 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 本蒟蒻表示:我只会用优先级队列做。 贪心:每一次只要取出最少的两堆合并就可以了。 代码 #include<bits/stdc++.h> using namespace std; int n; priority_queue<long long,vector<long long>,gr 阅读全文
posted @ 2022-06-11 13:39 A_zjzj 阅读(28) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 STL真好,有两个函数: next_permutation() prev_permutation() 分别是求出数组的下一个排列,和上一个排列。 可以就返回1,如果无法操作了,返回0 代码 #include<bits/stdc++.h> using namespace 阅读全文
posted @ 2022-06-11 13:38 A_zjzj 阅读(43) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一道模拟题,注意下细节 代码 #include<bits/stdc++.h> int s,h; int main(){ int x; for(int i=1; i<=12; i++){ scanf("%d",&x); s=s-x+300; if(s<0){ printf("-%d" 阅读全文
posted @ 2022-06-11 13:38 A_zjzj 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 因为只有唯一的顺序才完所有的花生,所以直接模拟即可 代码 #include<bits/stdc++.h> using namespace std; int n,m,t; int k; struct zj{ int x,y,sum; bool operator < (const zj 阅读全文
posted @ 2022-06-11 13:37 A_zjzj 阅读(65) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 直接dfs,注意要输出后序,即为先左子树再右子树最后根 代码 #include<bits/stdc++.h> using namespace std; int n; string a; void dfs(int l,int r){ if(l<r){ dfs(l,(l+r)>>1 阅读全文
posted @ 2022-06-11 13:37 A_zjzj 阅读(22) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一道模拟题,直接打擂台即可 代码 #include<bits/stdc++.h> using namespace std; int n,k,maxx; int x,y; int main(){ for(int i=1;i<=7;i++){ cin>>x>>y; if(x+y>max 阅读全文
posted @ 2022-06-11 13:36 A_zjzj 阅读(43) 评论(0) 推荐(1) 编辑
摘要:题面传送门 我去我TM没有去掉freopen调了一下午 思路 因为如果第i分钟可以控制住疫情,那么第i+1以及之后的都是可以的,所以,就可以二分了。 然后就是check函数如何写,有一个显而易见,就是每一个军队都要尽量靠近根节点,这样才会拦掉更多的点,所以,就要把每个军队 阅读全文
posted @ 2022-06-10 20:19 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看嘛,立刻想到了线段树,然后呢,又不想打,感觉太长,于是呢,因为如果从第i个订单开始出问题,那么i+1以及以后的都会出问题,所以就可以二分,然后二分呢,重要的是check。 我们就要看看前面这么多订单每天的加在一起够不够,所以是区间修改,然后,就要O(n)枚举每一 阅读全文
posted @ 2022-06-10 20:02 A_zjzj 阅读(58) 评论(0) 推荐(0) 编辑
摘要:gcd 定义:求出两个数的最大公因数。 算法定律:gcd(a,b)=gcd(b,amodb) 证明: 设gcd(a,b)=k,a=t1×k,b=t2×k 可知,gcd(t1,t2)=1,如果还有一个t,那么就可以说明$a 阅读全文
posted @ 2022-06-10 20:01 A_zjzj 阅读(41) 评论(0) 推荐(0) 编辑
摘要:题面传送门 ax1(modb) 其实这个同余方程就是axmod=1 就想是ax减掉若干个b剩下的1axby=1,然后直接用exgcd,求出来x就可以了,然后y求出来也不用管了,因为要正整数解,所以求出来一个x,就要输出$( 阅读全文
posted @ 2022-06-10 20:01 A_zjzj 阅读(29) 评论(0) 推荐(0) 编辑
摘要:题面传送门 我天,搞死我了,细节不少啊 思路 首先,一定会看出来可以在暴力的基础上加一点优化——预处理出每个点的第一近的点和第二近的点。(我枯了) 然后,弄好之后,我们发现,如果从不同点开始,有可能还是会走到一起,(即为后面一段相同),所以,就有了另一个优化——倍增,如果还不会的话,可以看看$rmq 阅读全文
posted @ 2022-06-10 20:00 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看,高精度,参见高精度模板--zhengjun,这个模板十分好用(直接粘贴就可以了)。(代码中就不显示了) 然后,如果是这样的排列: ||| |-|-| |之前的a乘积为t|| |k|a0,b0| |k+1|\(a_1.b_ 阅读全文
posted @ 2022-06-10 19:59 A_zjzj 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看,数据这么小,打个搜索剪枝一下就可以了。 然后,我打完了之后,T了一个点,就使劲想剪枝,就是已经走到的点就不用再走一次了。 代码 #include<bits/stdc++.h> #define maxn 101 #define maxm 10001 using namesp 阅读全文
posted @ 2022-06-10 19:58 A_zjzj 阅读(13) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一道模拟,注意细节即可 代码 #include<bits/stdc++.h> using namespace std; string a,b; int main(){ cin>>a>>b; for(int i=0,j=0;i<b.length();i++,j=(j+1)%a.len 阅读全文
posted @ 2022-06-10 19:58 A_zjzj 阅读(22) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看就是一道dpfi,j表示摆到第i种花,已经摆了j盆花所有的可能性; 初始化:f0,0=1 状态转移公式: fi,j=k=1min(ai,j)fi1,jk 这里就直接用滚动数组了。 阅读全文
posted @ 2022-06-10 19:54 A_zjzj 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 首先,一看就是一道模拟,然后这个是暴力代码(50分) #include<bits/stdc++.h> using namespace std; int n,m,x; int a[10001][101],b[10001][101],c[10001]; int main(){ scan 阅读全文
posted @ 2022-06-10 19:53 A_zjzj 阅读(58) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看就是一道搜索的好题目。 说道搜索,就想到了剪枝优化,然后,可以想到一个很简单的剪枝,就是先选所在的行、列、宫已知的数字最多的格子,这样有点麻烦,我就直接看看行就完事了。 然后,然后就是一个搜索了。 代码 #include<bits/stdc++.h> #define max(x 阅读全文
posted @ 2022-06-10 19:52 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 不就一道模拟吗,于是我就从n开始找,结果T了,然后,就想到了从小到大找,找到了就输出n÷i,结果就A了 代码 #include<bits/stdc++.h> using namespace std; int n; int main(){ cin>>n; fo 阅读全文
posted @ 2022-06-10 19:52 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看到这道题,立刻想到SPFA,结果一个单向的东西交上去,T了一个点。 然后,单向SPFA的搜索面积要远大于从两头开始找,于是,我就改变了思路,分别从两端开始找,分别找出到每个点的最小值和最大值,这样,每一个点一减取个最大值就完事了。 代码 #include<bits/ 阅读全文
posted @ 2022-06-10 19:50 A_zjzj 阅读(18) 评论(0) 推荐(0) 编辑
摘要:题面传送门 吐槽一句,这么水的题目能搞成蓝色??? 好了,进入正题: 思路 首先,列出式子: {gcd(x,a0)=a1lcm(x,b0)=b1 那么,先来看第一个式子: \(\gc 阅读全文
posted @ 2022-06-10 19:49 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看就是一道模拟。 注意一下细节就可以了。 代码 #include<bits/stdc++.h> using namespace std; string a,b,c; int x[26],y[26];//分别从两边映射 int main(){ cin>>a>>b>>c; memse 阅读全文
posted @ 2022-06-10 19:48 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题面传送门 思路 一看,不就是一个分解质因数吗? 这里使用欧拉筛筛素数,如果不会,可以用埃氏筛,反正代码都差不多。 进入正题。 以第二个样例为例: 2 24 1 30 12 先处理出素数表prime。(我喜欢欧拉筛) 然后分解质因数,用ai表示第i个素数有几个。(主要是省空间) 然后分 阅读全文
posted @ 2022-06-10 19:30 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题面传送门 我以后再也不赋值题面了,直接链接。 思路 不就一道模拟题吗? 想当年,我还不知道洛谷是个啥,还不会用sort,更不知道有结构体这个东西,只会打擂台n2排序,cin,coutscanf,printf都不会的蒟蒟蒟蒟蒟蒻,就做了这道题,哎 代码 #include<bits 阅读全文
posted @ 2022-06-10 19:29 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目描述 一元n次多项式可用如下的表达式表示: f(x)=anxn+an1xn1++a1x+a0,an0 其中,aixi称为i次项,ai 称为i次项的系数。给出一个一元多项式各项的次数和系数,请按照如下规定的格式要求 阅读全文
posted @ 2022-06-10 19:28 A_zjzj 阅读(57) 评论(0) 推荐(0) 编辑
摘要:题目描述 我们现在要利用m台机器加工n个工件,每个工件都有m道工序,每道工序都在不同的指定的机器上完成。每个工件的每道工序都有指定的加工时间。 每个工件的每个工序称为一个操作,我们用记号j-k表示一个操作,其中j1n中的某个数字,为工件号;k1m中的某个数 阅读全文
posted @ 2022-06-10 19:27 A_zjzj 阅读(49) 评论(0) 推荐(0) 编辑
摘要:题目描述 设 r 是个 2k 进制数,并满足以下条件: r 至少是个 2 位的 2k 进制数。 作为 2k 进制数,除最后一位外,r 的每一位严格小于它右边相邻的那一位。 将 r 转换为二进制数 q 后,则 q阅读全文
posted @ 2022-06-10 19:27 A_zjzj 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早,金明就开始做预算了,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是 阅读全文
posted @ 2022-06-10 19:25 A_zjzj 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目描述 给定一个正整数k(3k15),把所有k的方幂及所有有限个互不相等的k的方幂之和构成一个递增的序列,例如,当k=3时,这个序列是: 1,3,4,9,10,12,13, (该序列实际上就是:\(3^0,3^1,3^0+3^1,3^2,3^0+3^2,3^ 阅读全文
posted @ 2022-06-10 19:24 A_zjzj 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目描述 在Mars星球上,每个Mars人都随身佩带着一串能量项链。在项链上有N颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官) 阅读全文
posted @ 2022-06-10 19:24 A_zjzj 阅读(104) 评论(0) 推荐(0) 编辑
摘要:题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N元。于是,他把每件物品规 阅读全文
posted @ 2022-06-10 19:23 A_zjzj 阅读(24) 评论(0) 推荐(0) 编辑
摘要:题目描述 Jam是个喜欢标新立异的科学怪人。他不使用阿拉伯数字计数,而是使用小写英文字母计数,他觉得这样做,会使世界更加丰富多彩。 在他的计数法中,每个数字的位数都是相同的(使用相同个数的字母),英文字母按原先的顺序,排在前面的字母小于排在它后面的字母。我们把这样的“数字”称为Jam数字。在 阅读全文
posted @ 2022-06-10 19:23 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:#### 题目描述 小渊是个聪明的孩子,他经常会给周围的小朋友们将写自己认为有趣的内容。最近,他准备给小朋友们讲解立体图,请你帮他画出立体图。 小渊有一块面积为m×n的矩形区域,上面有m×n个边长为1的格子,每个格子上堆了一些同样大小的积木(积木的长宽高都是$ 阅读全文
posted @ 2022-06-10 19:22 A_zjzj 阅读(76) 评论(0) 推荐(0) 编辑
摘要:题目描述 明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N11000之间的随机整数(N100),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协 阅读全文
posted @ 2022-06-10 19:22 A_zjzj 阅读(26) 评论(0) 推荐(0) 编辑
摘要:题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏。这次,老师带着同学们一起做传球游戏。 游戏规则是这样的:n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师再次吹哨子时,传球停止,此时,拿着球 阅读全文
posted @ 2022-06-10 19:21 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:题目描述 每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的 阅读全文
posted @ 2022-06-10 19:20 A_zjzj 阅读(131) 评论(0) 推荐(0) 编辑
摘要:题目描述 上课的时候总会有一些同学和前后左右的人交头接耳,这是令小学班主任十分头疼的一件事情。不过,班主任小雪发现了一些有趣的现象,当同学们的座次确定下来之后,只有有限的 D 对同学上课时会交头接耳。 同学们在教室中坐成了 MN 列,坐在第 i 行第 j 阅读全文
posted @ 2022-06-10 19:20 A_zjzj 阅读(82) 评论(0) 推荐(0) 编辑
摘要:题目描述 明明进了中学之后,学到了代数表达式。有一天,他碰到一个很麻烦的选择题。这个题目的题干中首先给出了一个代数表达式,然后列出了若干选项,每个选项也是一个代数表达式,题目的要求是判断选项中哪些代数表达式是和题干中的表达式等价的。 这个题目手算很麻烦,因为明明对计算机编程很感兴趣,所以他想是不是可 阅读全文
posted @ 2022-06-10 19:19 A_zjzj 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目描述 佳佳刚进高中,在军训的时候,由于佳佳吃苦耐劳,很快得到了教官的赏识,成为了“小教官”。在军训结束的那天晚上,佳佳被命令组织同学们进行篝火晚会。一共有n个同学,编号从1n。一开始,同学们按照1,2,,n的顺序坐成一圈,而实际上每个人都有两个最希望相邻的同学。如何下命令调整 阅读全文
posted @ 2022-06-10 19:18 A_zjzj 阅读(57) 评论(0) 推荐(0) 编辑
摘要:首先,先谈谈快读快写 这是我一开始的输入输出 cin>>a; cout<<a; 然后,因为在一次模拟赛中cin被卡掉了,于是,我就改用 scanf("%d",&a); printf("%d",a); 可是,又有一道题,我打出了正解,可是T掉了一个点,结果用了快读快写,就A了,为什么快读会 阅读全文
posted @ 2022-06-10 19:18 A_zjzj 阅读(359) 评论(0) 推荐(0) 编辑
摘要:题目描述 某校的惯例是在每学期的期末考试之后发放奖学金。发放的奖学金共有五种,获取的条件各自不同: 院士奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得; 五四奖学金,每人4000元,期末平均成绩高于85分( 阅读全文
posted @ 2022-06-10 19:17 A_zjzj 阅读(26) 评论(0) 推荐(0) 编辑
摘要:题目描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧。在桥上有一些石子,青蛙很讨厌踩在这些石子上。由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0,1,,L(其中L是桥的长度)。坐标为0的点表示桥的起点,坐标为 阅读全文
posted @ 2022-06-10 19:17 A_zjzj 阅读(175) 评论(0) 推荐(0) 编辑
摘要:题目描述 有一个箱子容量为V(正整数,0V20000),同时有n个物品(0<n30),每个物品有一个体积(正整数)。 要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。 输入格式 1个整数,表示箱子容量 1个整数,表示有$n 阅读全文
posted @ 2022-06-10 19:16 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目描述 乐乐是一个聪明而又勤奋好学的孩子。他总喜欢探求事物的规律。一天,他突然对数的正整数次幂产生了兴趣。 众所周知,2的正整数次幂最后一位数总是不断的在重复2,4,8,6,2,4,8,6我们说2的正整数次幂最后一位的循环长度是4(实际上4的倍数都可以说是循环长度,但我们只考 阅读全文
posted @ 2022-06-10 19:16 A_zjzj 阅读(109) 评论(0) 推荐(0) 编辑
摘要:题目描述 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,,L,都种有一棵树。 由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表 阅读全文
posted @ 2022-06-10 19:15 A_zjzj 阅读(77) 评论(0) 推荐(0) 编辑
摘要:题目描述 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间 阅读全文
posted @ 2022-06-10 19:15 A_zjzj 阅读(105) 评论(0) 推荐(0) 编辑
摘要:题目描述 形如2P1的素数称为麦森数,这时P一定也是个素数。但反过来不一定,即如果P是个素数,2P1不一定也是素数。到1998年底,人们已找到了37个麦森数。最大的一个是P=3021377,它有909526位。麦森数有许多重要应用,它与完全数密切相关。 阅读全文
posted @ 2022-06-10 19:14 A_zjzj 阅读(57) 评论(0) 推荐(0) 编辑
摘要:题目描述 陶陶家的院子里有一棵苹果树,每到秋天树上就会结出 10 个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个 30 厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。 现在已知 10 个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请 阅读全文
posted @ 2022-06-10 19:14 A_zjzj 阅读(297) 评论(0) 推荐(0) 编辑
摘要:题目背景 栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表。 栈有两种最重要的操作,即 pop(从栈顶弹出一个元素)和 push(将一个元素进栈)。 栈的重要性不言自明,任何一门数据结构的课程都会介绍栈。宁宁同学在复习栈的基本概念时,想到了一个书上没有讲 阅读全文
posted @ 2022-06-10 19:13 A_zjzj 阅读(28) 评论(0) 推荐(0) 编辑
摘要:卡特兰数简介 卡特兰数其实不是一个数,而是一个数列。 一、了解卡特兰数 卡特兰数又称卡塔兰数,它是组合数学中一个常出现在各种计数问题中出现的数列,其前几项为 : 1,1,2,5,14,42,132,429,1430,4862, \(16796, 58786, 208012,.. 阅读全文
posted @ 2022-06-10 19:13 A_zjzj 阅读(184) 评论(0) 推荐(0) 编辑
摘要:题目背景 国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白11分制和21分制对选手的不同影响。在开展他的研究之 阅读全文
posted @ 2022-06-10 19:12 A_zjzj 阅读(79) 评论(0) 推荐(0) 编辑
摘要:题目背景 本题是错题,后来被证明没有靠谱的多项式复杂度的做法。测试数据非常的水,各种玄学做法都可以通过,不代表算法正确。因此本题题目和数据仅供参考。 近来,一种新的传染病肆虐全球。蓬莱国也发现了零星感染者,为防止该病在蓬莱国大范围流行,该国政府决定不惜一切代价控制传染病的蔓延。不幸的是,由于人们尚未 阅读全文
posted @ 2022-06-10 19:11 A_zjzj 阅读(51) 评论(0) 推荐(0) 编辑
摘要:题目描述 明明同学最近迷上了侦探漫画《柯南》并沉醉于推理游戏之中,于是他召集了一群同学玩推理游戏。游戏的内容是这样的,明明的同学们先商量好由其中的一个人充当罪犯(在明明不知情的情况下),明明的任务就是找出这个罪犯。接着,明明逐个询问每一个同学,被询问者可能会说: 证词中出现的其他话,都不列入逻辑推理 阅读全文
posted @ 2022-06-10 19:10 A_zjzj 阅读(146) 评论(0) 推荐(0) 编辑
摘要:题目描述 设一个n个节点的二叉树tree的中序遍历为(1,2,3,,n),其中数字1,2,3,,n为节点编号。每个节点都有一个分数(均为正整数),记第ii个节点的分数为di,tree及它的每个子树都有一个加分,任一棵子树subtree(也包含tree本身)的加分 阅读全文
posted @ 2022-06-10 19:10 A_zjzj 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目描述 给出一个整数 nn<1030)和 k 个变换规则(k15)。 规则: 一位数可变换成另一个一位数。 规则的右部不能为零。 例如:n=234。有规则(k=2): 2->5 3->6 上面 阅读全文
posted @ 2022-06-10 19:09 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题目描述 已知 n 个整数 x1,x2,,xn,以及1 个整数 k (k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3, 4 个整数分别为 3,7,12,19 时,可得全部 阅读全文
posted @ 2022-06-10 19:08 A_zjzj 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目描述 在平面上有 n 个点(n50),每个点用一对整数坐标表示。例如:当 n=4 时,4 个点的坐标分另为:p1(1,1),p2(2,2),p3(3,6),p4(0,7),见图一。 阅读全文
posted @ 2022-06-10 19:07 A_zjzj 阅读(75) 评论(0) 推荐(0) 编辑
摘要:题目描述 已知:Sn=1+1/2+1/3++1/n。显然对于任意一个整数 k,当 n 足够大的时候,Sn>k。 现给出一个整数 k,要求计算出一个最小的 n,使得 Sn>k。 输入格式 一个正整数 k。 输出格式 一个正整数 阅读全文
posted @ 2022-06-10 19:07 A_zjzj 阅读(34) 评论(0) 推荐(0) 编辑
摘要:题目描述 已知有两个字串A,B及一组字串变换的规则(至多6个规则): A1 > B1 A2 > B2 规则的含义为:在 A中的子串 A1 可以变换为 B1A2 可以变换为 B2 \(·· 阅读全文
posted @ 2022-06-10 19:06 A_zjzj 阅读(60) 评论(0) 推荐(0) 编辑
摘要:题目描述 在高为H的天花板上有n个小球,体积不计,位置分别为 0,1,2,,n1。在地面上有一个小车(长为L,高为K,距原点距离为S1)。已知小球下落距离计算公式为d=0.5×g×(t2),其中 g=10t为下落时间。 阅读全文
posted @ 2022-06-10 19:06 A_zjzj 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目描述 给出一棵二叉树的中序与后序排列。求出它的先序排列。(约定树结点用不同的大写字母表示,长度 8)。 输入格式 2行,均为大写字母组成的字符串,表示一棵二叉树的中序与后序排列。 输出格式 1行,表示一棵二叉树的先序。 输入输出样例 输入 #1 复制 BADC BDCA 阅读全文
posted @ 2022-06-10 19:05 A_zjzj 阅读(34) 评论(0) 推荐(0) 编辑
摘要:题目描述 有N堆纸牌,编号分别为 1,2,···,N。每堆上有若干张,但纸牌总数必为N的倍数。可以在任一堆上取若干张纸牌,然后移动。 移牌规则为:在编号为1堆上取的纸牌,只能移到编号为2的堆上;在编号为N的堆上取的纸牌,只能移到编号为N1的堆上;其他堆上取的纸牌,可 阅读全文
posted @ 2022-06-10 19:05 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入两个正整数 x0,y0,求出满足下列条件的 P,Q 的个数: P,Q 是正整数。 要求 P,Qx0 为最大公约数,以 y0 为最小公倍数。 试求:满足条件的所有可能的 P,Q 的个数。 输入格式 一行两个正整 阅读全文
posted @ 2022-06-10 19:03 A_zjzj 阅读(138) 评论(0) 推荐(0) 编辑
摘要:题目描述 小明的班上共有 n 元班费,同学们准备使用班费集体购买 3 种物品: 圆规,每个 7 元。 笔,每支 4 元。 笔记本,每本 3 元。 小明负责订购文具,设圆规,笔,笔记本的订购数量分别为 a,b,c,他订购的原则依次如下: n 元钱 阅读全文
posted @ 2022-06-10 19:03 A_zjzj 阅读(52) 评论(0) 推荐(0) 编辑
摘要:题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数n): 先输入一个自然数n(n1000),然后对此自然数按照如下方法进行处理: 不作任何处理; 在它的左边加上一个自然数,但该自然数不能超过原数的一半; 加上数后,继续按此规则进行处理,直到不能再加自然数为止. 输 阅读全文
posted @ 2022-06-10 19:02 A_zjzj 阅读(44) 评论(0) 推荐(0) 编辑
摘要:高精度 有些时候题目的数据太大,一般我们常用 int 的变量就够了,可有时候还不够,要用 unsigned int ,有时候 unsigned int 都不够,就要用 long long ,有时候 long long 还不够,用 \(unsigned\ 阅读全文
posted @ 2022-06-10 19:01 A_zjzj 阅读(153) 评论(0) 推荐(0) 编辑
摘要:题目描述 又到暑假了,住在城市 ACar 想和朋友一起去城市旅游。 她知道每个城市都有 4 个飞机场,分别位于一个矩形的 4 个顶点上,同一个城市中两个机场之间有一条笔直的高速铁路,第 i 个城市中高速铁路了的单位里程价格为 Ti ,任意两个不 阅读全文
posted @ 2022-06-10 19:00 A_zjzj 阅读(36) 评论(0) 推荐(0) 编辑
摘要:题目描述 将整数n分成k份,且每份不能为空,任意两个方案不相同(不考虑顺序)。 例如:n=7k=3,下面三种分法被认为是相同的。 1,1,5; 1,5,1; 5,1,1. 问有多少种不同的分法。 输入格式 n,k (\(6<n \le 200 阅读全文
posted @ 2022-06-10 18:59 A_zjzj 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目描述 给出一个长度不超过 200 的由小写英文字母组成的字母串(该字串以每行 20 个字母的方式输入,且保证每行一定为 20 个)。要求将此字母串分成 k 份,且每份中包含的单词个数加起来总数最大。 每份中包含的单词可以部分重叠。当选用一个单词之后,其第一个字母不 阅读全文
posted @ 2022-06-10 18:59 A_zjzj 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题目描述 有形如:ax3+bx2+cx1+dx0=0 这样的一个一元三次方程。给出该方程中各项的系数(a,b,c,d均为实数),并约定该方程存在三个不同实根(根的范围在100100之间),且根与根之差的绝对值 1。要求由小到大依次在同一行输出这三个实根 阅读全文
posted @ 2022-06-10 18:47 A_zjzj 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目背景 每样商品的价格越低,其销量就会相应增大。现已知某种商品的成本及其在若干价位上的销量(产品不会低于成本销售),并假设相邻价位间销量的变化是线性的且在价格高于给定的最高价位后,销量以某固定数值递减。(我们假设价格及销售量都是整数) 对于某些特殊商品,不可能完全由市场去调节其价格。这时候就需要政 阅读全文
posted @ 2022-06-10 18:46 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题目背景 NCL是一家专门从事计算器改良与升级的实验室,最近该实验室收到了某公司所委托的一个任务:需要在该公司某型号的计算器上加上解一元一次方程的功能。实验室将这个任务交给了一个刚进入的新手ZL先生。 题目描述 为了很好的完成这个任务,ZL先生首先研究了一些一元一次方程的实例: \(4+ 阅读全文
posted @ 2022-06-10 18:44 A_zjzj 阅读(72) 评论(0) 推荐(0) 编辑
摘要:题目描述 给定一个信封,最多只允许粘贴N张邮票,计算在给定KN+K15)种邮票的情况下(假定所有的邮票数量都足够),如何设计邮票的面值,能得到最大值MAX,使在1MAX之间的每一个邮资值都能得到。 例如,N=3K=2,如果面值分别为1阅读全文
posted @ 2022-06-10 18:43 A_zjzj 阅读(86) 评论(0) 推荐(0) 编辑
摘要:题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beastastonish,如果接成一条龙则变为$beastonis 阅读全文
posted @ 2022-06-10 18:41 A_zjzj 阅读(45) 评论(0) 推荐(0) 编辑
摘要:题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹依次飞来的高 阅读全文
posted @ 2022-06-10 18:41 A_zjzj 阅读(131) 评论(0) 推荐(1) 编辑
摘要:题目描述 我们可以用这样的方式来表示一个十进制数: 将每个阿拉伯数字乘以一个以该数字所处位置为指数,以 10 为底数的幂之和的形式。例如 123 可表示为 1×102+2×101+3×100这样的形式。 与之相似的,对二进制数来说,也可表示 阅读全文
posted @ 2022-06-10 18:40 A_zjzj 阅读(48) 评论(0) 推荐(0) 编辑
摘要:题目描述 今年是国际数学联盟确定的“ 2000――世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度为N 阅读全文
posted @ 2022-06-10 18:40 A_zjzj 阅读(145) 评论(0) 推荐(0) 编辑
摘要:题目描述 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的)。给定两个城市之间的距离D1、汽车油箱的容量C(以升为单位)、每升汽油能行驶的距离D2、出发点每升汽油价格P和沿途油站数NN可以为零),油站i离出发点的距离Di、每升汽油价格$ 阅读全文
posted @ 2022-06-10 18:39 A_zjzj 阅读(39) 评论(0) 推荐(0) 编辑
摘要:题目描述 若一个数(首位不为零)从左向右读与从右向左读都一样,我们就将其称之为回文数。 例如:给定一个十进制数56,将5665(即把56从右向左读),得到121是一个回文数。 又如:对于十进制数87: STEP1:87+78 = 165 STEP2: 阅读全文
posted @ 2022-06-10 18:33 A_zjzj 阅读(54) 评论(0) 推荐(0) 编辑
摘要:题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的: 1/1 , 1/2 , 1/3 , 1/4 , 1/5 , 2/1 , 2/2 , 2/3 , \(2/ 阅读全文
posted @ 2022-06-10 18:32 A_zjzj 阅读(32) 评论(0) 推荐(0) 编辑
摘要:思路 首先,看到题目“”,就知道是二分答案了,我们可以二分“每段和最大值”,再来判断是否合法,就可以了。 在判断时,应该用一个变量保存当前加到了多少,如果再加上一个就大于当前mid, 就将组数加一,只要组数小了,就把right移到mid,(当前mid大了),否则,就把l 阅读全文
posted @ 2022-06-10 18:32 A_zjzj 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题目描述 著名科学家卢斯为了检查学生对进位制的理解,他给出了如下的一张加法表,表中的字母代表数字。 例如: + L K V E L L K V E K K V E KL V V E KL KK E E KL KK KV 其含义为: L+L=LL+K=KL+V=V,\(L+ 阅读全文
posted @ 2022-06-10 18:30 A_zjzj 阅读(63) 评论(0) 推荐(0) 编辑
摘要:题目描述 火车从始发站(称为第1站)开出,在始发站上车的人数为a,然后到达第2站,在第2站有人上、下车,但上、下车的人数相同,因此在第2站开出时(即在到达第3站之前)车上的人数保持为a人。从第3站起(包括第3站)上、下车的人数有一定规律:上车的人数都是前两站上车人 阅读全文
posted @ 2022-06-10 18:29 A_zjzj 阅读(58) 评论(0) 推荐(0) 编辑
摘要:题目描述 设有n个正整数(n20),将它们联接成一排,组成一个最大的多位整数。 例如:n=3时,3个整数13312343联接成的最大整数为:34331213 又如:n=4时,4个整数71344246联接成的最大整 阅读全文
posted @ 2022-06-10 18:29 A_zjzj 阅读(53) 评论(0) 推荐(0) 编辑
摘要:题目描述 任何一个正整数都可以用 2 的幂次方表示。例如 137=27+23+20。 同时约定方次用括号来表示,即 ab可表示为 a(b)。 由此可知,137 可表示为 2(7)+2(3)+2(0) 进一步: 7=22+2+20($2 阅读全文
posted @ 2022-06-10 18:28 A_zjzj 阅读(23) 评论(0) 推荐(0) 编辑
摘要:题目描述 用高精度计算出S=1!+2!+3!++n!(n50) 其中!表示阶乘,例如:5!=5×4×3×2×1。 输入格式 一个正整数N。 输出格式 一个正整数S,表示计算结果。 输入输出样例 输入 #1 阅读全文
posted @ 2022-06-10 18:27 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目背景 战争已经进入到紧要时间。你是运输小队长,正在率领运输部队向前线运送物资。运输任务像做题一样的无聊。你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们。士兵们十分愤怒,因为这座独木桥十分狭窄,只能容纳1个人通过。假如有2个人相向而行在桥上相遇,那么 阅读全文
posted @ 2022-06-10 18:26 A_zjzj 阅读(69) 评论(0) 推荐(0) 编辑
摘要:题目背景 本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。 题目描述 将1,2,,99个数分成3组,分别组成3个三位数,且使这3个三位数构成1:2:3的比例,试求出所有满足条件的3个三位数。 输入格式 木有 阅读全文
posted @ 2022-06-10 18:26 A_zjzj 阅读(27) 评论(0) 推荐(0) 编辑
摘要:题目描述 帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的n×m的矩阵,矩阵中的每个元素ai,j​ 均为非负整数。游戏规则如下: 每次取数时须从每行各取走一个元素,共n个。经过m次后取完矩阵内所有元素; 每次取走的各个元素只能是该元素所在行的行首或行尾; 每次取数 阅读全文
posted @ 2022-06-10 18:25 A_zjzj 阅读(26) 评论(0) 推荐(0) 编辑
摘要:题目描述 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排做成一个 mn 列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小渊坐在矩阵 阅读全文
posted @ 2022-06-10 18:25 A_zjzj 阅读(89) 评论(0) 推荐(0) 编辑
摘要:数据结构之树状数组 zhengjun P3374题目(树状数组1) 题目描述: 已知一个数列,你需要进行下面两种操作: 将某一个数加上 x 求出某区间每一个数的和 输入格式 第一行包含两个正整数 n,mn,m,分别表示该数列数字的个数和操作的总个数。 第二行包含 nn 个用空格分隔的整数,其中第 i 阅读全文
posted @ 2022-06-10 18:24 A_zjzj 阅读(35) 评论(0) 推荐(0) 编辑
摘要:题目描述 为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 n 张地毯,编号从 1n。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。 地毯铺设完成后,组 阅读全文
posted @ 2022-06-10 18:22 A_zjzj 阅读(44) 评论(0) 推荐(0) 编辑
摘要:题目描述 设有 N×N 的方格图 (N9),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字 0。如下图所示(见样例): A 0 0 0 0 0 0 0 0 0 0 13 0 0 6 0 0 0 0 0 0 7 0 0 0 0 0 0 14 阅读全文
posted @ 2022-06-10 18:22 A_zjzj 阅读(25) 评论(0) 推荐(0) 编辑
摘要:题目描述 输入两个整数 a,b,输出它们的和(|a|,|b|109)。 注意 Pascal 使用integer 会爆掉哦! 有负数哦! C/C++main 函数必须是 int 类型,而且最后要 return0。这不仅对洛 阅读全文
posted @ 2022-06-10 18:21 A_zjzj 阅读(53) 评论(0) 推荐(0) 编辑
摘要:题目描述 棋盘上 A 点有一个过河卒,需要走到目标 B 点。卒行走的规则:可以向下、或者向右。同时在棋盘上 C 点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。 棋盘用坐标表示,A(0,0)B 阅读全文
posted @ 2022-06-10 18:21 A_zjzj 阅读(95) 评论(0) 推荐(0) 编辑
摘要:这题还要多说吗 上代码 #include<bits/stdc++.h> using namespace std; int main() { cout<<" ********\n"; cout<<" ************\n"; cout<<" ####....#.\n"; cout<<" #.. 阅读全文
posted @ 2022-06-10 18:20 A_zjzj 阅读(43) 评论(0) 推荐(0) 编辑
摘要:题目描述 你有 n 种牌,第i种牌的数目为 ci 。另外有一种特殊的牌:joker,它的数目是 m。你可以用每种牌各一张来组成一套牌,也可以用一张 joker 和除了某一种牌以外的其他牌各一张组成 1 套牌。比如,当 n=3 时,一共有 \( 阅读全文
posted @ 2022-06-10 18:20 A_zjzj 阅读(55) 评论(0) 推荐(0) 编辑
摘要:Description 一种新型的激光炸弹,可以摧毁一个边长为R的正方形内的所有的目标。现在地图上有n(n<=10000)个目标,用整数Xi,Yi(其值在[0,5000])表示目标在地图上的位置,每个目标都有一个价值。激光炸弹的投放是通过卫星定位的,但其有一个缺点,就 阅读全文
posted @ 2022-06-10 18:19 A_zjzj 阅读(19) 评论(0) 推荐(0) 编辑
摘要:Description 给出圆周上的若干个点,已知点与点之间的弧长,其值均为正整数,并依圆周顺序排列。 请找出这些点中有没有可以围成矩形的,并希望在最短时间内找出所有不重复矩形。 Input 第一行为正整数N,表示点的个数,接下来N行分别为这N个点所分割的各个圆弧长度 Output 所构 阅读全文
posted @ 2022-06-10 18:18 A_zjzj 阅读(26) 评论(0) 推荐(0) 编辑
摘要:Description 依次对每份进行编码,得S1,S2,S3,S4。该矿藏区的编码S为2S1S2S3S4。 例如上图中,矿藏区的编码为:2021010210001。 小联希望你能根据给定的编码统计出这片矿藏区一共有多少格子区域是平地。 Input 第一行有一个整数K,表示有矿藏区的规模为 (1 < 阅读全文
posted @ 2022-06-10 18:18 A_zjzj 阅读(21) 评论(0) 推荐(0) 编辑
摘要:题目描述 FLY想要带着他新叫的朋友环游QZ,于是他把QZ划分成了n个地方,已知这n个地方由m条双向边相连接,并且他把n个地方分别赋予了一个happy值,他希望按照happy值严格递减a>b的方法去游览QZ,这样他可以把一些最美的地方介绍给他朋友。如果 阅读全文
posted @ 2022-06-10 18:15 A_zjzj 阅读(38) 评论(0) 推荐(0) 编辑
摘要:题目描述 FLY农场里的奶牛数量越来越多,牧场里通往牛棚的道路越来越拥堵了,为了缓解交通堵塞,FLY决定找出最拥挤的道路进行处理。 农场可以看成有N(1N5000)个点(从1到N标号),M(1M50000)条边的单向图。总牛棚设置在N号点,其他点均为奶牛们所在 阅读全文
posted @ 2022-06-10 18:14 A_zjzj 阅读(30) 评论(0) 推荐(0) 编辑
摘要:c++实现计算二十四点--zj 首先,要感谢vaintwyt的C++实现24点算法,使我有了灵感,编出了计算24点的程序。 不懂的,直接去刚才第二个链接里看。 上代码 #include<bits/stdc++.h> #define f(x) for(x=1;x<=4;x++) using names 阅读全文
posted @ 2022-06-10 18:13 A_zjzj 阅读(347) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示