A.Movie 题意是给n个线段,要求求出是否存在三个不相交的线段,是的话输出yes,否则输出no.根据贪心的想法,可以先找出右端点r'最小的线段,他是三条线段中最左的那条,再找出左端点l'最大的线段,他是三条线段中最右的那条,这样我们只需要找出是否存在一条线段可以放在中间,即区间[l,r],l>r',r<l'. 代码 #include<cstdio> int n; long long L,R,l,r,a,b,c,d,mi,mx,flag,u,v,i; int main() { i…
对于这项曾经热爱的竞赛,不得不说这是我最后一年参加ACM比赛了,所以要珍惜每一次比赛的机会. 五一去杭电参加了赛码"BestCoder"杯中国大学生程序设计冠军赛,去的队伍包括了今年19支World final的队伍,几乎是全国最强的46所学校各出了一个代表队,十分感谢学校给了我这个大三的老年血手这次去比赛的机会. 比赛在5.2一天内完成,上午的热身赛居然是上一场Bestcoder的原题= =.虽然我们三个人都没做过...不过我还是水水的写了前两道题. 在中午的悲惨淋雨后,下午正赛开始…
Cycle Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 865    Accepted Submission(s): 241 Problem Description Ery is interested in graph theory, today he ask BrotherK a problem about it: Given…
军训队列 题目描述某大学开学进行军训队列训练,将学生从一开始按顺序依次编号,并排成一行横队,训练的规则如下:从头开始一至二报数,凡报到二的出列剩下的依次向前靠拢,再从头开始进行一至三报数,凡报到三的出列,剩下的依次向前靠拢,继续从头开始进行一至二报数...以后每次从头开始轮流进行一至二报数.一至三报数直到剩下的人数不超过三人为止.输入第一行为组数N,接着为N行学生人数,学生人数不超过5000.样例输入22040输出输出有N行,分别对应输入的学生人数,每行输出剩下的学生最初的编号,编号之间有一个空…
上台阶 题目描述 有一楼梯共m级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第m级,共有多少走法?注:规定从一级到一级有0种走法. 输入输入数据首先包含一个整数n(1<=n<=100),表示测试实例的个数,然后是n行数据,每行包含一个整数m,(1<=m<=40), 表示楼梯的级数.样例输入223输出对于每个测试实例,请输出不同走法的数量.样例输出12时间限制C/C++语言:2000MS其它语言:4000MS 内存限制C/C++语言:65537KB其它语言:589825KB…
前队名太过晦气,故启用最大牛 我们的组队大概就是18年初,组队阵容是17级生詹志龙.陶源和16级的黄睿博. 三人大学前均无接触过此类竞赛,队伍十分年轻.我可能是我们队最菜的,我只是知道的内容最多,靠我躺赢的比赛基本没有(其实好几场我力揽狂澜的hhhh). 本博客有我的训练记录,他们的可以去这里 陶源(图论选手+数据结构) 詹志龙(DP+各种思维) 刚开始主要是一些水题,省赛前进行了比较多的组队训练 训练场次(TOJ的训练就不一一枚举了,个人感觉没太大提升) 浙南联合训练赛20180318 htt…
题目传送门 /* 题意:无向图和有向图的混合图判环: 官方题解:首先对于所有的无向边,我们使用并查集将两边的点并起来,若一条边未合并之前, 两端的点已经处于同一个集合了,那么说明必定存在可行的环(因为这两个点处于同一个并查集集合中,那么它们之间至少存在一条路径) 如果上一步没有判断出环,那么仅靠无向边是找不到环的 考虑到,处于同一个并查集集合中的点之间必定存在一条路径互达,因此将一个集合的点合并之后, 原问题等价于在新生成的有向图中是否有环 我们知道,有向无环图必定存在拓扑序,因此只需使用拓扑排…
题目传送门 /* 递推DP:官方题解 令Fi,j代表剩下i个人时,若BrotherK的位置是1,那么位置为j的人是否可能获胜 转移的时候可以枚举当前轮指定的数是什么,那么就可以计算出当前位置j的人在剩下i − 1个人时的位置 (假设BrotherK所处的位置是1),然后利用之前计算出的F值判定此人是否可能获胜 时间复杂度为O(n3) dp[i][j] 表示有i个人,j位置的人是否可能胜利.dp[1][0] = 1; cnt = sum (dp[n][i]); 有最优化子结构,i个人可以由i-1个…
题目传送门 /* 数学:官方题解 首先,数组中每个元素至少是1 然后对于任意一个询问Li, Ri, Ansi, 说明Li ~ Ri中的元素必定是Ansi的倍数,那么只需将其与Ansi取最小公倍数即可 如果在计算过程中有一个值超出了可行范围,那么就无解了 在计算完成之后,注意这个解并不一定是正确的,还需要对于所有询问检查一遍 时间复杂度O(NQlogX), X为值的范围 题目不难,算是签到题,可是队友考虑复杂了,GCD (0, ..) ?! 反思:题目要读仔细,组队时做不来要让队友帮忙读题想题 *…
题目传送门 /* 贪心:官方题解: 首先我们考虑如何选择最左边的一个区间 假设最左边的区间标号是i, 那选择的另外两个区间的左端点必定要大于Ri 若存在i之外的j, 满足Rj<Ri, 那么另外两个区间的选择余地必定不会减少 因此,为了使另外两个区间有尽可能多的选择,我们选择一个右端点最小的区间作为最左边的区间是最好的 同理,我们选择一个左端点最大的区间作为最右边的区间,也将提供最多的选择 确定了这两个区间之后,只需判断是否存在一个区间位于它们中间且不交叉即可 本题的取模值十分特殊,用unsign…