finals专题

Coder-Strike 2014 - Finals (online edition, Div. 1) C. Bug in Code

水题一道,但是卡了一个早上 我本着数据结构去做的,知道用树状数组就是没有想出来维护的方法.... 用树状数组维护,提名 i 次的人有getsum个 注意一点的是,如果怀疑的人是 1 2,然后有一个人是同时提名这两个的,那么这个人就会被算两次 因此我每次用树状数组统计的时候,将同时和第i个人提名的各个人数减1,再统计,然后再恢复(这是一种很麻烦的做法,我是渣渣别介意 #include

Bubble Cup 8 - Finals [Online Mirror] - A.Fibonotci【分段+ST表】

因为  si s_i为近似周期序列,而且告诉你了 m m个位置以及数字。 那么就将序列分成mm段,每一段用一个ST表来维护区间矩阵乘积 然后注意一些细节,比如 m <script type="math/tex" id="MathJax-Element-259">m</script>段分段如果两个不周期位置连续,以及最后一个段等等。 想法还是比价明显的,但是确实不好写…. #include<

codeforces-Coder-Strike 2014 - Finals (online edition, Div. 2)

A. Pasha and Hamsters 模拟 #include <stdio.h>#include <string.h>int l1[101];int l2[101];int main(){memset(l1,0,sizeof (l1));memset(l2,0,sizeof (l2));int n,a,b,i,t;scanf ("%d%d%d",&n,&a,&b);for (i =

Coder-Strike 2014 - Finals (Div. 2) A. Pasha and Hamsters

超简单的贪心题,就不用多说了吧... 先处理好第一个人的,在处理第二个人的,如果二者喜欢同一个苹果,给第一个人 代码如下: #include <map>#include <cmath>#include <vector>#include <string>#include <cstdio>#include <cstring>#include <cstdlib>#include

Coder-Strike 2014 - Finals ( Div. 2) B. Start Up

判断字符串是否镜像,需要注意的是不仅要判断每个字符是否为镜像,还要判断整个字符串是否镜像 不得不说的是‘N’自身不是镜像的。。。因为这个被人hack了一次 代码如下: #include <map>#include <cmath>#include <vector>#include <string>#include <cstdio>#include <cstring>#inclu

CF ABBYY Cup 3.0 - Finals A2. Oh Sweet Beaverette 题解 前缀和 贪心

Oh Sweet Beaverette 题目描述 有一个森林共有 n n n 棵树,它们各自都有美丽值,要砍掉一些树,也可以不砍。 要求: 剩余树的美丽值之和必须最大化;结果中第一棵和最后一棵树的美丽值必须相同;森林中必须至少剩下两棵树。 问:需要砍下哪些树才能让剩余树的美丽值之和最大化? 输入格式 第一行包含一个整数 n n n,表示森林中树的数量。 第二行包含 n n n 个

例题4-5 追踪电子表格中的单元格(Spreadsheet Tracking,ACM/ICPC World Finals 1997,UVa512)

原题链接:https://vjudge.net/problem/UVA-512 分类:函数 备注:复杂模拟 前言:理论上这应该是个水题…,但是需要足够的仔细,仔细再仔细! 第一种思路,单点模拟,先说明这确实和作者的原代码没什么差别,我自己的是第二个… 代码如下: #include<stdio.h>#include<string.h>const int maxd = 10000;int r

例题6-13 古代象形符号(Ancient Messages,World Finals 2011,UVa 1103)

原题链接:https://vjudge.net/problem/UVA-1103 分类:图 备注:思维 前言:说实话我确实自己写不出,写下面代码的时候对一下uDebug,不过我没有看作者代码了(早就看了好几遍了),相当于我把作者的代码默写了一下,以后可能很多题都要这样吧,但是能默写出来说明我也是有好好理解这代码是怎么写出来的。我看了作者代码挺久才懂的,不知道下面讲的算不算清楚,对于尚未理解题目的人

习题5-16 医院设备利用(Use of Hospital Facilities,ACM/ICPC World Finals 1991,UVa212)

原题链接:https://vjudge.net/problem/UVA-212 分类:<algorithm> 备注:中级模拟,输出格式 前言:输出格式懒得数的直接看下面代码,很清楚了,注意每组数据最后还要输出空行。这UVA的PDF让我们通过数dash来数空格我能理解,但是空行是多少肉眼看不出来啊,居然两个表之间只有一个空行,还不说明清楚,正式比赛也会这样吗?还有第二个表开头并不要一个空格,PDF显

例题5-12 城市正视图(Urban Elevations,ACM/ICPC World Finals 1992,UVa221)

原题链接:https://vjudge.net/problem/UVA-221 分类:<algorithm> 备注:离散化 前言:我也不太清楚刘老师为什么说这题是离散化,我想可能是用到集合的东西吧,区间完全包含于建筑的区间或者交集为空,这都是离散的知识。 但是把无限变为有限是很有用的一种思想! 本题我确实借鉴了VJ中Praying的评论中的代码,所以会很像! 代码如下: #include<se

习题5-13 客户中心模拟(Queue and A,ACM/ICPC World Finals 2000,UVa822)

原题链接:https://vjudge.net/problem/UVA-822 分类:STL综合 备注:复杂模拟,阅读理解 前言:每种请求如果有多个可以同时被不同的客服所处理,一开始没理解这点疯狂WA。 但是巧的的有一份代码是每种请求同一时间只能被一个客服处理,并没有达到题意隐藏的这个要求却意外AC了??甚至我认为这份代码对于客服挑选请求的顺序都可能不够严谨,这个AC能说明什么呢,UVa的数据太

例题5-11 邮件传输代理的交互(The Letter Carrier's Rounds,ACM/ICPC World Finals 1999,UVa814)

原题链接:https://vjudge.net/problem/UVA-814 分类:STL综合 备注:字符串以及STL容器的综合运用 前言:uDebug AndyRoswellD的数据没过,但是我没看懂他的输出的逻辑,难道有多个传输者?题目没这么写啊,好歹还是AC了。个人认为是他上传的数据有误。 代码如下: #include<iostream>#include<sstream>#incl

习题5-8 图书管理习题(Borrowers,ACM/ICPC World Finals 1994, UVa230)

原题链接:https://vjudge.net/problem/UVA-230 分类:STL综合 备注:中级模拟 分析:按题目意思来模拟就可以了,但是排序有点麻烦… 代码如下: #include<iostream>#include<string>#include<vector>#include<map>#include<set>#include<algorithm>using nam

习题7-1 消防车(Firetruck,ACM/ICPC World Finals 1991, UVa208)

原题链接:https://vjudge.net/problem/UVA-208 备注:回溯法 分类:DFS 代码如下: #include<cstdio>#include<cstring>#include<queue>#include<vector>#include<algorithm>using namespace std;int kase, k, vis[25], pre[25]

例题11-4 电话圈(Calling Circles, ACM/ICPC World Finals 1996, UVa247)

原题链接:https://vjudge.net/problem/UVA-247 分类:图论 备注:Floyd传递闭包 注意:逗号后面有空格,否则显示WA 代码如下: #include<iostream>#include<map>#include<vector>#include<cstring>using namespace std;const int maxn = 30;stri

习题 3-5 谜题 Puzzle (World Finals 1993) UVa 227

题目:有一个5*5网格,其中恰好一个格子是空的,其它格子都有一个字母。一共有4种指令:A B R L,分别表示上 下 左 右 。 输入 初始网格和指令序列(以数字0结束), 输出指令执行完毕后的结果。如果有非法指令,应输出“This puzzle has no final configuration.” Input: TRGSJ XDOKI M VLN WPABE UQHCF ARRBBL0

纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994,UVa232)

习题3-6 纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994,UVa232)         输入一个r行c列(1≤r,c≤10)的网格,黑格用“*”表示,每个白格都填有一个字母。如果一个白格的左边相邻位置或者上边相邻位置没有白格(可能是黑格,也可能出了网格边界),则称这个白格是一个起始格。 首先把所有起始格按照从上到下、从左到右的顺序编

2018-2019 ICPC, NEERC, Northern Eurasia Finals G-Guest Student(思维)

题目链接:http://codeforces.com/contest/1089/problem/G 题意:给你一个t代表t组数据,然后一个k,代表你需要上k节课,下一行有七个数代表一周七天,1是你需要上的课,0是不需要上的课,第一次上课你可以从周一到周日选一天从这天开始上课,接下来只能按顺序一天一天的上课(0也要上课),比如k = 3,序列为1 0 1 1 0 0 0,则需要上四节课,让你输出

2018-2019 ICPC, NEERC, Northern Eurasia Finals L- Lazyland(思维)

题目链接:http://codeforces.com/contest/1089/problem/L 题意:是有n个人,k份工作,每份工作的编号是1-k,然后输入n个ai,第二行输入n个bi,ai代表当前第i个人所选的工作编号,bi代表如果让这个人去换一个工作所需要花费的时间,现在要让每一份工作都有人去做,问最少需要花费多少时间可以实现。 思路:就是在输入的时候把每个工作的人数记录下来然后记录一

2018 XCTF FINALS

欢迎关注我的新博客: http://mmmmmmlei.cn 有幸参加了 2018 XCTF FINALS,线下长了不少见识。回学校就打了上海市大学生网络安全竞赛,现在记录一下 XCTF FINALS。 攻防赛四道 pwn,Web 狗也只能打打解题这样子… 解题有 5 道 Misc,2 道 Web 和 4 道 pwn,和队友做出了两道 Misc ,一道 Web 和两道 pwn。不得不说这次的

信息解码(Message Decoding, ACM/ICPC World Finals 1991, UVa 213)

考虑下面的01串序列: 0, 00, 01, 10, 000, 001, 010, 011, 100, 101, 110, 0000, 0001, …, 1101, 1110, 00000, … 首先是长度为1的串,然后是长度为2的串,依此类推。如果看成二进制,相同长度的后 一个串等于前一个串加1。注意上述序列中不存在全为1的串。 你的任务是编写一个解码程序。首先输入一个编码头(例如AB#TANC

程序模拟(Concurrency Simulator, ACM/ICPC World Finals 1991, UVa210)rust解法

你的任务是模拟n个程序(按输入顺序编号为1~n)的并行执行。每个程序包含不超过25条语句,格式一共有5种:var = constant(赋值);print var(打印);lock;unlock;end。 变量用单个小写字母表示,初始为0,为所有程序公有(因此在一个程序里对某个变量赋值可能会影响另一个程序)。常数是小于100的非负整数。 每个时刻只能有一个程序处于运行态,其他程序均处于等待态。上述

程序模拟(Concurrency Simulator, ACM/ICPC World Finals 1991, UVa210)rust解法

你的任务是模拟n个程序(按输入顺序编号为1~n)的并行执行。每个程序包含不超过25条语句,格式一共有5种:var = constant(赋值);print var(打印);lock;unlock;end。 变量用单个小写字母表示,初始为0,为所有程序公有(因此在一个程序里对某个变量赋值可能会影响另一个程序)。常数是小于100的非负整数。 每个时刻只能有一个程序处于运行态,其他程序均处于等待态。上述

城市正视图(Urban Elevations, ACM/ICPC World Finals 1992, UVa221)rust解法

如图5-4所示,有n(n≤100)个建筑物。左侧是俯视图(左上角为建筑物编号,右下角为高度),右侧是从南向北看的正视图。 输入每个建筑物左下角坐标(即x、y坐标的最小值)、宽度(即x方向的长度)、深度(即y方向的长度)和高度(以上数据均为实数),输出正视图中能看到的所有建筑物,按照左下角x坐标从小到大进行排序。左下角x坐标相同时,按y坐标从小到大排序。输入保证不同的x坐标不会很接近(即任意两个x

正方形(Squares, ACM/ICPC World Finals 1990, UVa201)rust解法

有n行n列(2≤n≤9)的小黑点,还有m条线段连接其中的一些黑点。统计这些线段连成了多少个正方形(每种边长分别统计)。 行从上到下编号为1~n,列从左到右编号为1~n。边用H i j和V i j表示,分别代表边 (i,j)-(i,j+1)和(i,j)-(i+1,j)。如图4-5所示最左边的线段用V 1 1表示。图中包含两个边长为1的正方形和一个边长为2的正方形。 样例 4 16H 1 1

谜题(Puzzle, ACM/ICPC World Finals 1993, UVa227)rust解法

有一个5*5的网格,其中恰好有一个格子是空的,其他格子各有一个字母。一共有4种指令:A, B, L, R,分别表示把空格上、下、左、右的相邻字母移到空格中。输入初始网格和指令序列(以数字0结束),输出指令执行完毕后的网格。如果有非法指令,应输出“This puzzle has no final configuration.”,例如,图3-5中执行ARRBBL0后,效果如图3-6所示。 解法 u