首页 > TAG信息列表 > Ques
结对编程队友代码分析
摘要 本博客是对结对编程队友丑怡丹个人项目:中小学生数学题自动生成系统的分析 一、 实现语言 C++ 二、 整体思路 1.首先在teacher.h文件里定义存储教师信息的结构体,各种全局符号、数组、函数体的声明。其中五个函数实现主要功能。 voidCF1685D1 Permutation Weight (Easy Version)
题面传送门 首先如果整个排列是一个环的话那么答案就是\(0\),由此我们得到了一个在环内构造的方法。 但是如果在环之间切换的话代价至少为\(1\),设环的个数为\(p\),则答案至少为\(2p-2\) 转化一下题目,相当于给每个\(p_i\)分配一个\(s_i\),满足\(s\)整个序列构成一个环。 初始我们先给CF1641D Two Arrays
题面传送门 感觉很妙妙的一道题,但是好像啥乱搞都能过。 我们考虑排好序后对于每一个\(m\)元组求出其最小的与其不相同的\(w_j\) 容易发现这个\(w_j\)如果上升那么是没有意义的,所以可以双指针。 然后就相当于询问一个前缀内是否有与当前点完全不同的\(m\)元组,这个可以把所有子集跑luogu P5939 [POI1998]折线
题面传送门 首先这个\([45,-45]\)看上去就很不爽,于是顺时针旋转45一下然后变成\([0,90]\) 然后就发现一个点只能被它左上角的点的折线拉到。 那么就是求覆盖所有点的不升字符列最少个数,经典转化一下就是最长上升子序列长度。 直接树状数组就好了。 code: #include<bits/stdc++.h>CF343E Pumping Stations
题面传送门 真正跑出来的时候被吓到了跑的是真的快。 首先这种题目肯定要跑出最小割树。在最小割树上面乱搞。 然后变成经过树上每一个点,两点距离为路径最小值求最大路径。 我们肯定想让最小的边经过的次数最小。 那么我们让它只走一次。 把这条边断开,得到两棵树,添加一条路径,是从CF587F Duff is Mad
题面传送门 差点看成另外一道题。 因为这个是统计\([l,r]\)区间内的个数所以拆成\([1,r]-[1,l-1]\) 然后很不好做,考虑根号分治。 如果这个询问串长度小于\(\sqrt n\)那么就暴力插入找答案即可,这个用分块维护答案可以做到\(O(m\sqrt n)\) 对于大于\(\sqrt n\)的,就直接对于每个这种EOJ Monthly 2021.2 C. 今我来思(sì)【线段树】
题目链接 首先,很容易想到的是,我们不妨直接就对这个区间进行更新了,譬如区间[l, r]的最小值为x,那么我们直接去对这个区间进行更新,但是很容易就会发现一个误区,如果目前[l, r]已经被赋值为x,现在又对相同的[l, r]区间说它是最小值为y的,这时候怎么进行记录?所以,这时候我们想到了,对于每20200924-5 四则运算试题生成,结对
此作业的要求参见:https://edu.cnblogs.com/campus/nenu/2020Fall/homework/11245 结对伙伴:宫立秋 github中代码地址:https://github.com/amancer34/calculate.git 一、功能1 四则运算 支持出题4个数的四则运算题目,所有题目要求作者有能力正确回答 (提示:1/3 != 0.33333333333333333Jquery实现点击当前radio button设置选中属性,其它设置非选中属性
一、HTML代码: <div class="ques-tc-r" id="question_type"> <ul class="clearfix"> <li class="select-cur"> <input type=&总结-二分
CDQ(时间二分) BZOJ2683简单题 拆询问,二分过程中归并解决偏序 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #define R(a,b,c) for(register int a = (b); a <= (c); ++a) #define nR(a,b,c) for(register