- 博客(73)
- 资源 (17)
- 收藏
- 关注
原创 (0 v 0)
#include<bits/stdc++.h>using namespace std;string s,t;int now=0;int main(){ ifstream list("list"); int a; while(getline(list,s)) { cout<<s<<"\n"; now++; if(now%5==0) s...
2019-10-26 14:48:50
283
原创 Codeforces Round #594 (Div. 2)
A. Integer Points有一个长度为n的序列p1,p2…pn,代表n条直线 y=x+pi有一个长度为m的序列q1,q2…qm,代表m条直线 y=-x+qi问这n+m条直线之间有多少个整数交点。题解:y=x+piy=x+piy=x+pi &...
2019-10-22 07:56:46
523
原创 最大团最大独立集
点独立集设无向图 G=<V,E>,V∗⊂VG=<V,E>, V^*\subset VG=<V,E>,V∗⊂V ,若 V∗V^*V∗ 中任意两个顶点均不相邻,则称 V∗V^*V∗ 为 GGG 的点独立集,或称独立集。最大点独立集的顶点个数记做 β0\beta_0β0若 GGG 中无孤立点, V∗V^*V∗ 为 GGG 中极大独立集,则 V∗V^*V∗ 为极小...
2019-10-16 08:17:22
309
原创 NOIP2019复赛模拟13-day1
总体来说:今天的题水到一定的境界??!!!!传送门T1 斗地主这个题与洛谷的斗地主根本没办法比啊,直接暴力dfs即可。笔者以为脑子一时抽风,忘记最后可以留一张单牌而华丽丽的WA了ヘ(;´Д`ヘ)#include <bits/stdc++.h>using namespace std;int h[1000],ok=0;char ch[100];void dfs(){...
2019-10-14 14:52:47
222
原创 CF1244D Paint the Tree
题意: 一棵n个节点的树,给每个节点上色,有三种颜色可以选择。但每个节点,涂不同颜色的代价是不同的。 上色后,满足任意一个(x,y,z)x,y之间有边,y,z之间有边;且x,y,z三点的颜色不同。问最小代价。...
2019-10-14 14:22:54
686
原创 NOIP2019复赛模拟11-day2
T1Trape出题人真的是太有毒了!!!题意在搞什么!!!QAQ(梯形只存在横向放着,没有乱七八糟旋转)题解:枚举下底边,使左右边界不断右移即可。(可以使用单调队列)#include <bits/stdc++.h>using namespace std;int a[5200][5200];int main(){ int i,j,ans=0,n,m,x,y; s...
2019-10-12 14:45:49
201
原创 CodeForces 1228 F One Node is Gone
F One Node is GoneTopic:You have an integer nnn . Let’s define following tree generation as McDic’s generation:Make a complete and full binary tree of 2n−12^n - 12n−1vertices. Complete and full bi...
2019-10-01 16:22:29
140
原创 VIM的入门使用
命令含义CtrlCtrlCtrl [[[进入普通模式escescesc进入普通模式iii进入编辑模式hhh jjj kkk lll普通模式的 上下左右dddddd删除一行gggggg跳到第一行GGG跳到最后一行ctrlctrlctrl ddd光标下移半个屏幕ctrlctrlctrl uuu光标上移...
2019-09-11 20:40:18
150
原创 Dev C++ 的图形库EGE #include"graphics.h"
一天,我看到了洛谷的日报https://forinser.blog.luogu.org/EasyX然后尝试了一下,发现这个软件只适用于 VS C++然后,非常非常的无(sheng)奈(qi)好吧,然后就开始尝试寻找有没有适用于 DEV C++ 的图形库(∗ ̄︶ ̄)(* ̄︶ ̄ )(∗ ̄︶ ̄) 终于让我找到了啊首先先下载EGE链接: https://pan.baidu.com/s/1rP...
2019-08-08 15:15:39
14326
45
原创 P1185 绘制二叉树
https://www.luogu.org/problem/P1185题目描述用程序来绘制一棵二叉树,它由一颗满二叉树去掉若干结点而成。 (具体见链接)样例 #12 0 o / \ o o样例 #24 0 o / \ / \ ...
2019-08-07 16:22:02
330
原创 夏令营501-511NOIP训练18
T1 高一学堂在美丽的中山纪念中学里面,有一座高一学堂。所谓山不在高,有仙则名;水不在深,有龙则灵。高一学堂,因为有了yxr,就成了现在这个样子 = =。由于yxr 的语言太过雷人,每次他发微往往都会有一石激起千层浪的效果,具体就是所有关注他的人都会转发,同时@他,接着关注这些人的人也会转发,同时@他关注的人(注意转发内容本身会有@yxr),以此类推。这样导致每次yxr 发微博都会...
2019-08-02 19:46:59
170
原创 文件列表
BSOI在线评测机被不明身份的人入侵了!!系统中大量的数据遭到恶意破坏,数据文件残缺不全。现在,老师正在尽力抢救数据文件。为了检查数据文件是否完整,老师打印出了所有文件的列表,但数据文件太多,老师眼睛都要看花了。所以,为了方便老师检查,需要你写个程序处理一下文件列表,转换成下面这样统一的格式:(//后面为注释)data //data文件夹,根目录|----prob //data下面的文件夹|...
2019-07-30 14:44:56
1230
原创 线段树
基本概念 线段树的每个节点表示一个区间,主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操作的复杂度为O(logn)。每个节点的左孩子区间范围为[ l,mid ],右孩子为[ mid+1 , r ]对于结点k,左孩子结点为2k,右孩子为2k+1。基本操作建树二分每个...
2018-11-05 18:41:25
214
原创 乘法逆元
首先,我想说——学会了乘法逆元,就相当于打开了模世界的大门!定义 若在mod p意义下,对于一个整数a,有a*b≡1(mod p),那么这个整数d即为a的 乘法逆元,同时a也为d的乘法逆元 (所以,我们可以根据上述公式,将除法转化为乘法。)性质存在唯一性证明:假设存在a′′也满足a×a′′≡1(mod p) 则有a×a′≡a×a′′(mod p)∴a′ ≡ a′′(mo...
2018-10-26 19:09:49
331
原创 链表
首先,我们需要知道什么是链表https://baike.baidu.com/item/%E9%93%BE%E8%A1%A8/9794473 (可以从这里了解) 链表是一种物理存储单元上非连续、非顺序的存储结构 链表分为三类:单向链表、双向链表、循环链表 单向链表 链表中最基本的数据称为节点(node),每个节点包含了数据块和指向下一个节点的指针,链...
2018-10-25 14:09:55
220
原创 window c++ 对拍
首先,对拍是个好东西。需要一个保证正确输出的代码,我们将它命名为 right.cppe.g.#include<bits/stdc++.h>using namespace std;int main(){ int a,b; cout<<a+b; return 0;}然后将你的代码,命名为 mine.cppe.g.#include<bits/s...
2018-10-25 11:53:28
271
1
原创 (gdb)调试代码
window先window+r 打开 cmd进入你选定的文件地址 ,,这里选在桌面选择编译一个代码g++ 3.cpp -g中间的是文件名。e.g.#include<bits/stdc++.h>using namespace std;int main(){ int a=1; int b=2; int c=a*b*b; int d=b*b*b*b*b; pr...
2018-09-27 09:59:05
267
原创 TopCoder SRM 580
div.1T1题意 鳗鱼i的长度是l [i],速度是1。 在时间T,鳗鱼i的头部位于坐标T-t [i],其尾部位于坐标T-t [i] -l [i]。 当鳗鱼的某些部分(头部和尾部之间,包括在内)与兔子处于同一坐标时,兔子可能只捕捉到鳗鱼。 兔子最多可以捕获两次鳗鱼 返回兔子可以捕获的最大鳗鱼总数。思路 优选择一定是在2n个端点中选出两个#...
2018-09-06 20:36:56
379
原创 TopCoder SRM 579
div.1T1题意 编辑器由三部分组成:结果窗口,文本缓冲区和撤消历史记录。 Bob可能会输入一个小写字母。该字母附加到文本缓冲区。然后将新文本缓冲区添加为撤消历史记录的新元素。 Bob可以使用两次鼠标单击将任何条目从撤消历史记录恢复到文本缓冲区。此操作不会修改撤消历史记录。 返回Bob需要将所有给定行打印到结果窗口中的最小按钮按下次数思路 模拟每个...
2018-09-05 14:08:21
311
原创 TopCoder SRM 577
div.1T1题意 如果N可被20整除,则房间数被设置为R = N/20,否则R = N/20 + 1 注册人按降序排列 第一批R注册人被随机分配到房间,使得其中没有两个人在同一个房间。然后对下一个R注册人进行同样的操作,依此类推,直到没有更多未分配的注册人为止。 Elly的评级是列表中的第一个。 返回Elly房间(包括她自己)的参赛者的预期平均评分。...
2018-08-30 19:11:07
429
原创 TopCoder SRM 576
div.1T1题意 有一个n*m的图,一些单元格的底部有可以站立的平面,最下面一行都有 如果两个单元都包含平台并且| i1-i2 |,则Manao可以在两个单元(i1,j)和(i2,j)之间爬行 只有一个单元格包含金币 找到最短的梯子使得可以取到金币#include <bits/stdc++.h>using namespace std;int...
2018-08-30 17:46:08
393
原创 TopCoder SRM 575
div.1T1题意 每一步可以对把当前数N,减去 N的任意一个非1,N的因子。谁先不能操作就算输。思路 记A(i) 为当N=i时先手是否必胜,显然A(i)只依赖于A(1)~A(i-1),可以暴力DP(N<100),即可观察到规律。 结论:当且仅当N为偶数,且N != 2^(2*x+1)(x为任意非负整数)时,为先手必胜,否则为先手必败。#incl...
2018-08-29 18:06:15
219
原创 TopCoder SRM 574
div.1T1题意 有两个数字a,b 玩家A 持有a,玩家B 持有b 他们可以改变自己的数字 方式为 1. 倒转 2.除以10 两人轮流进行操作 A先 若在1000步以内可以使得两个数字相同 则A胜利 反之 A失败思路 只要判断一下 a中有没有b或b的翻转数的子串 即可//tc is healthy, just d...
2018-08-29 16:58:55
280
原创 TopCoder SRM 573
div.1T2题意 给定一个50个点的图, 每个点有一个高度, 从一个点u到另一个点v的条件是u, v直接相连, 并且h[u] >= h[v],每个点的高度可以改变代价为改变前后高度差的绝对值, 求从点0到点n - 1的最小代价。思路 定义dp[u][h]表示顶点u高度为h时最小代价由于最优方案中每个点的高度可以是这50个点的起始高度所以可以将高度离散化一下, ...
2018-08-28 17:15:02
266
原创 TopCoder SRM 572
div.1T1题意 有一个字符串 和一个数k 改变最少的字符使得字符串的前k个字符与后k个字符 相同思路 使用并查集,将需要相同的字符并起来。再在每个集合中将其修改为出现次数最多的字符。#include <bits/stdc++.h>using namespace std;int f[10000],vis[100010];map<...
2018-08-28 13:02:18
303
原创 TopCoder SRM 571
div.1T1题意 给个数,n,求1-n中安字典序升序排列的前50个数。思路 直接爆搜即可#include <bits/stdc++.h>using namespace std;vector<string> ans;class FoxAndMp3 {public: vector <string> playL...
2018-08-28 11:43:28
210
原创 TopCoder SRM 570
div.1T1题意 给一个操作序列,每次向当前方向走a[i]步,然后90度转a[i]次,问做T次该操作序列之后的位置与起始位置的manhattan距离。思路 首先肯定做完4次操作序列后肯定能还原方向,那么模拟做完剩下的就行了。//tc is healthy, just do it#include <bits/stdc++.h>using name...
2018-08-28 11:40:34
340
原创 TopCoder SRM 569
div.1T1题意 有一台机器,给定两个长度为N的01串作为输入,分别对每一位进行与、或、异或中的一种操作,输出操作后的串。先给定M个01串,问至少要添加几个串,才能判断出机器对每一位分别进行什么操作。思路 显然位与位之间互相独立,那么单独考虑一位。 对于每一位,都至少要有1个0,2个1,如果不足就要添加。 这是只有三种输入:(0,0),(0,1),(1,...
2018-08-28 11:37:48
218
1
原创 TopCoder SRM 568
div.1T1题意 现有n个盒子,每个盒子里分别有R个红球,G个绿球和B个蓝球。 可以进行一种把一个球从一个盒子放到另一个盒子的操作。 现要用这种操作使得每个盒子里都只有一种颜色的球。 求最小操作次数。若不能,输出-1.思路 首先,把所有的球都放到假想的三个框中。代价为球的总数。 然后我们发现,每个框都有一种颜色的球不需要放到假想框中。这种...
2018-08-28 11:33:28
347
原创 TopCoder SRM 567
div.1T1题意 给你两个数,N,M,然后有一个整数a属于1到N,b属于1到M,问有几个a有序数对(a,b)满足(sqrt(a)+sqrt(b))^2是整数。思路 知道(sqrt(a)+sqrt(b))^2拆开就是a+b+2 * sqrt(ab),那么只要满足ab是完全平方数就好了,我们考虑a,b都是一些质数次方的乘积,我们吧a,b中本来就有的完全平方数去掉,会发现...
2018-08-28 11:27:42
297
原创 TopCoder SRM 566
div.1T1题意 : 有n个点,m条边,点的位置不知道,但是三点不共线,可以去掉任意条边,问使得没有两条线相交的情况的数量; 思想: 有两种选法,一种是三条边正好围成三角形,另一种是菊花图,这样就保证最长的链长度小于等于2。。。#include <bits/stdc++.h>using namespace std;long long a[100]...
2018-08-28 11:17:28
232
原创 次小生成树
input 第一行包含两个整数N 和M,表示无向图的点数与边数。 接下来 M行,每行 3个数x y z 表示,点 x 和点y之间有一条边,边的权值为z。output 包含一行,仅一个数,表示严格次小生成树的边权和。exampleinput 5 6 1 2 1 1 3 2 2 4 3 3 5 4 3 4...
2018-08-10 09:12:59
222
原创 CodeForces - 294E - Shaass The Great
题目 树中有n个点,从n-1条边中去除一条边,再构建一条相同长度的边重新构成一棵树(去除的边和构造的边可能相同),问新树中任意两点之间距离的总和最小是多少。题解去除一条边之后一定会分成两棵树,构造新的边时,可知经过新边的次数=树1结点数*树2结点数直接枚举边(u,v),则答案为 树1的点到u的距离和* 树2 的点个数 + 树2的点到v的距离和树 1 的点个数+dis(u,v...
2018-08-10 08:40:30
170
原创 CodeForces - 379F - New Year Tree(树的直径)
题目 原始有一棵根为1,有三个叶子2,3,4的树。有t个操作,每次可以在一个叶子下面续上两个节点,每次操作完问当前树的直径。题解1.每次加点后,树的直径的端点至多只会变化一个,且必然有一个端点是新加的点。 2. 所以只要分别求他到原直径两端的距离,若大于原直径长度则更新直径。#include<bits/stdc++.h>using namespace std;...
2018-08-10 08:34:07
268
原创 CodeForces - 734E - Anton and Tree
题目 给出n个点,n-1条边构成一棵生成树,每个点都有黑白两种颜色,每次改变颜色都能使同颜色的相邻点改变颜色,求最小改变颜色的次数 题解每次将一个联通块的颜色反转,这个联通块的区域都会变的更大。所以只要把颜色相同的点缩成一个点 只要在缩完点的树的直径中心改变len / 2个节点即可len 为直径长度#include<bits/stdc++.h>usin...
2018-08-10 08:24:47
183
原创 CodeForces - 191C - Fools and Roads (LCA)
http://codeforces.com/problemset/problem/191/C题目 给出一棵n个节点的树,还有树上的k条简单路径(用路径的两个端点u和v表示),求树上的各条边被这些简单路径经过的总次数。题解只要记录一下每个节点i到根节点路径上所有边都需要加的权值sum[i]就行了。 对于每一组(u,v),题意操作转化为 c[u]++ , a[v]++ ...
2018-08-10 08:10:11
217
原创 HDU 4059 The Boss on Mars
http://acm.hdu.edu.cn/showproblem.php?pid=4059题目求区间 [ 1 , n ] 中所有与n互质的数的4次方和题解先筛素数算出n的质因子假设有一个质因子为x,令y=n/x,说明区间 [ 1 , n ] 中有y个数和x不互质,则 这y个数的和为 (1^4+2^4+3^4…..+y^4)* (x * x * x * x)根据容斥...
2018-08-09 13:09:48
122
原创 HDU 4135 Co-prime
http://acm.hdu.edu.cn/showproblem.php?pid=4135题目求在区间 [ l , r ] 之间有多少个数与 n 互质题解相对于互质,不互质的数更好求只要求出n的质因数,再看看 [ l , r ] 有多少个数含有这些因子这时就需要一些容斥原理,奇加偶减#include<bits/stdc++.h>using names...
2018-08-09 13:02:45
145
原创 HDU 4912 Paths on the tree
http://acm.hdu.edu.cn/showproblem.php?pid=4912题目有一棵树,顶点为1,2,3…….n,树上有m条路径,选择一些路径,且这些路径没有公共部分。问最大路径数题解算出每一条路径的两个顶点的最近公共祖先,从大到小排序按顺序遍历一遍即可#include<bits/stdc++.h>using namespace std;...
2018-08-09 12:55:49
288
原创 HDU 4911 Inversion
http://acm.hdu.edu.cn/showproblem.php?pid=4911题目一个序列 可以交换任意相邻的两个元素 ,最多可以进行n次,问 最后 最少有多少个逆序对题解显然 答案为 max(cnt - k,0) cnt 表示原来有多少个逆序对所以用归并排序计算一下cnt就可以了#include&lt;bits/stdc++.h&gt;using na...
2018-08-09 12:46:50
175
第4章 算法.docx
2019-10-03
第1章 计算机基础知识.docx
2019-10-01
网络流基础
2018-10-26
数学例题(题解)
2018-10-25
数学知识+算法的详解
2018-10-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人