自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

beckyUp的博客

所谓ACM 不过是你将大学四年都搭进去,你还觉得放不下,愿意为其熬夜,为其秃发,乐在其中,走火入魔吧

  • 博客(250)
  • 收藏
  • 关注

原创 一些简化代码的小技巧

tips本文专门用于介绍一些非常好用的函数和操作,学习一个是一个。可以使得比赛的时候大大简化工作量。计算二进制中的1的个数__builtin_popcount(x)计算gcd__gcd(x,y)计算全排列next_permutation(a,a+n)...

2019-04-28 19:20:11 305

原创 ROCKY 9 安装gdb

rocky linux 9 安装 gdb

2023-07-26 16:33:56 195

原创 goland CreateProcess error=216

create process error=216

2022-08-30 19:25:39 264 1

原创 protobuf边遍历边删除迭代器

我们经常遇见一边遍历,一边删除的情况。这种删除,很容易引起迭代器失效,进而引起bug.而protobuf提供了连续容器删除的时候,erase返回下一个元素的迭代器可以参考以下写法for (auto iter = list.begin();iter!=list.end();){ if(){ iter = list.erase(iter); } else{ iter++; }}...

2021-10-18 16:19:10 1615

原创 c++ #if #ifdef #ifndef 的区别

2021-06-01 15:43:39 155

原创 codeforces 1521C Nastia and a Hidden Permutation

题目大意交互题,有一个1~n的排列,有两种询问方式q1:t=1: max(min(x,pi),min(x+1,pj));q2:t=2: min(max(x,pi),max(x+1,pj));其中 x的取值范围在1~x-1要求在 ⌊32n⌋+30\lfloor \frac{3}{2}n \rfloor+30⌊23​n⌋+30 的次数内查询得到结论思路分析由Q1可知 ,当x = INF的时候,max(min(inf,pi),min(inf,pj)) = min(pi,pj)由Q2可知,当x= 0

2021-05-16 15:45:26 160

原创 LRU算法的实现2【数据结构】

理论上不能算是最好的算法,但是这个方法也可以。#include <bits/stdc++.h>using namespace std;template <typename K,typename V>class LRU{private: unordered_map<K,pair<V,int> > keyTable; map<int,K> timeTable; int nowTime=0;public: void insert

2020-06-06 15:14:33 221

原创 Unity 出现 Instantiate 时 会卡死的现象

原因是我实例化的物体上面挂了一个脚本这个脚本上会实例化一个带有空脚本的物体。把物体上面的 空脚本摘掉就好了。

2020-03-25 11:10:33 1284 1

原创 【unity3d】 EasyTouch摇杆控制人物,获取人物移动速度

//获取摇杆的速度private ETCJoystick joystick;//虚拟摇杆 public float speed; private string name; void Start() { joystick = GetComponent<ETCJoystick>(); speed = joystick.tm...

2020-02-23 10:08:50 1201

原创 C#本质论 读书笔记(一) .NET 体系结构

本章重点C# 与. NET的关系CLR

2020-02-03 15:52:28 150 2

原创 codeforces 1242B 0-1 MST 【图论+并查集】

题目分析要求最小生成树,如果考虑有0 边相连的点作为一个集合的话,那么就是求集合的个数那么我们怎么统计 有 0边相邻的点呢?很显然不能再原图上直接暴力跑。因为随着n的增大,补图会非常大。但是我们用并查集维护集合的个数那么我们考虑一个点u ,遍历与u相邻的所有小于u的点,统计u与这个点所在的集合相连的数量比如 1,2,3 是一个集合 6 与1,2,相连,那么1,2,3 这个集合的数量为3...

2019-11-07 17:08:34 731

原创 【高性能计算】 mobaXtern的使用

下载完之后session 这里新建一个连接,输入ip地址,用户名,密码就可以连接上了连接之后,就进入一个linux的操作界面进入一个目标文件夹下,所有的工作都将在这个文件夹中进行我们先新建一个hello.c的文件,随便写一个hello world的文件。#include <stdio.h>#include "mpi.h"int main( int argc, char...

2019-11-07 09:38:37 1958

原创 codeforces 686D树的重心

题目分析要求树以及树的重心性质重心 子树个数 *2 ≥\ge≥ 所有个数代码详解#include <bits/stdc++.h>using namespace std;const int maxn = 3e5+50;vector<int>G[maxn];int ans[maxn];int sz[maxn];int fa[maxn];void dfs(...

2019-11-06 17:59:01 177

原创 bzoj4299 Codechef FRBSUM【主席树】

题目分析当我们考虑如果能够 组成 [0,x]的所有的数,那么这些数都能扩展区间,因此,我们考虑每次统计 小于 x的所有数的和,和就是当前能够扩展的区间,然后再统计小于和的所有值的和,不断倍增就可以了。所以用一个主席树维护一下复杂度是 O(nlognlogn)O(nlognlogn)O(nlognlogn)代码详解#include <bits/stdc++.h>using n...

2019-11-05 21:04:49 127

原创 codeforces 185B Mushroom Scientists【不等式的应用】

题目分析xa∗yb∗zc=aa∗bb∗cc∗(xa)a∗(yb)b∗(zc)cx^a*y^b*z^c =a^a*b^b*c^c*(\frac{x}{a})^a *(\frac{y}{b})^b*(\frac{z}{c})^cxa∗yb∗zc=aa∗bb∗cc∗(ax​)a∗(by​)b∗(cz​)c≤aa∗bb∗cc∗(a∗xa+b∗xb+c∗xca+b+c)(a+b+c)\le a^a*b^...

2019-11-05 17:20:47 164

原创 codeforces 257D sum 【思维】

题目分析考虑 0≤a[i+1]−a[i]≤a[i]0 \le a[i+1]- a[i] \le a[i]0≤a[i+1]−a[i]≤a[i]所以本题倒过来考虑我们发现,考虑每一个 i, 如果 a[i+1] 的范围在 (a[i],a[i]*2)的范围内的话,那么 我令 x= a[i+1]-a[i] x的范围就会在 (0,a[i])之间所以对于每一个位置i,我们一定可以令后面的数的范围 ...

2019-11-05 15:34:10 119

原创 codeforces 234F Fence[dp]

题目分析dp[i][j][0] 表示 前i个物品中有 j 个红色的 且第i个物品是 绿色的最小价值dp[i][j][1] 表示 前i个物品中有 j 个红色的 且第i个物品是 红色的最小价值dp[i][j][0]=min(dp[i−1][j][0],dp[i−1][j][1]+min(h[i−1],h[i]))dp[i][j][0] = min( dp[i-1][j][0],dp[i-1][j...

2019-11-05 14:37:42 141

原创 codeforces 1238D 【思维】

题目分析正难则反考虑不是GOOD string的情况,只有ABB…BBBBAA…AAAAAA…AABBBB…BBA然后 用 n*(n-1)/2 减去不满足的情况就可以啦代码详情#include <bits/stdc++.h>using namespace std;typedef long long ll;int main(){ int n; cin>...

2019-11-05 13:40:09 210

原创 Dropping tests 【算法竞赛进阶指南 0x3B 16】【0/1分数规划】【二分】

题目大意给出n个 ai ,bi对 最多删去其中k对 使得 Σai/Σ bi 最大题目分析考虑二分。因为解的存在具有单调性。所以二分答案把小于0的结果放在优先队列里面,如果个数大于k 就弹出最大的k个即可代码详解#include <bits/stdc++.h>#define eps 1e-6using namespace std;typedef long long l...

2019-10-29 14:59:23 141

原创 codeforces 1252K Addition Robot【线段树+矩阵乘法】

题目大意给你一个串 包含AB两种元素,进行以下两种操作1、给定一个区间[l,r][l,r][l,r] 将 A 变成 B,B 变成 A2、给定一个查询区间 [l,r][l,r][l,r] 以及 两个数 x,y在区间 [l,r][l,r][l,r]中如果 s[i]=As[i] =As[i]=A 那么 x = x+y否则 y=x+y查询这个区间最后的x,y分别是多少题目分析刚拿到这个...

2019-10-28 18:36:58 446

原创 codeforces1251E2 Voting【优先队列+思维】

题目大意给出 nnn 个人,每个人两个值 m[i]m[i]m[i], p[i]p[i]p[i] ,p[i]p[i]p[i] 表示 收买这个人给你投票需要的花费 ,m[i]m[i]m[i]表示,如果已经有m[i]m[i]m[i]个人给你投票, 第iii个人就会免费给你投票。题目思考这个题是一个比较强的思维题。首先我们一定可以知道以下几个关系:1、如果我能够让第i个人免费给我投票的话,那么 ...

2019-10-25 15:36:13 381

原创 牛客练习赛53 德育分博弈政治课 【网络流】

题目大意给出n个只有六个面的骰子每个面由1~9 中的数字组成每个面的数字不同给出q次询问每次给出一个串,要求用n个骰子摆出串的形状题目分析因为每个骰子只能表示一个面类似一个由限制的问题考虑网络流中的一个点如果它的进入的流量为1 就能限制它在与它相连的点中只选择一个。那么我们考虑建这样一个图每个数字到汇点的权值应该是查询串中这个数字出现的次数然后,只要我们能跑一个满流...

2019-10-12 23:14:56 271 2

原创 牛客练习赛53 富豪凯匹配串【bitset】

题目大意给你一些01串 (1000个串,串长1000)然后给你q(3000)个询问 ,每个询问给一串 ,如1__0__由1,0,_ 组成,_ 表示可以匹配0或者1题目分析这个题显然不能暴力匹配由于符号只有0和1所以我们可以发现如果我们要匹配11&1 = 1如果我们要匹配01&0 = 0如果我们要匹配_0&1 = 0 ,0&0 =0因此,我...

2019-10-12 17:55:51 160

原创 牛客练习赛53 老瞎眼 pk 小鲜肉[思维+离线+线段树]

题目大意给定一个序列,q个查询查询(l,r)内 异或值=0 的最小区间题目分析考虑对序列求一个前缀异或和那么 每个点找到与自己相同的最近的点的位置,就是每个点作为右端点 =0 的最小区间。所有的查询区间按照右端点排序然后我们枚举1,n所有点,在线段树 该店对应左端点的位置插入这个区间长度。对于所有右端点为i的询问 查询(l,r)区间内的最小值即可代码详解#include &l...

2019-10-12 17:28:57 291

原创 2018 icpc Beijing Regional H 【dp+ac自动机】

题目大意给定一个串,长度为m, 询问存在多少长度为n的串,使得与长度m的串对应位置匹配最多只有一个字符不相同的方案数题目分析如果我们考虑串进行匹配的化,很难去重因此我们反过来考虑考虑匹配不上的情况那么要匹配的串只有m+1个,所以我们只要考虑当前串的一个后缀是否是m+1个串的前缀即可。然后通过后缀进行转移f[i][j] 表示 前i项的后缀为状态j的时候的方案数那么对于第i+1项,...

2019-09-19 11:30:53 227

原创 2018 ICPC焦作 F 【模拟+bfs】

#include <bits/stdc++.h>using namespace std;char s[4005][6105];typedef pair<int,int> PII;map<PII,int>mp;int tot=0;int M,N;const int maxn = 2e6+50;const int inf = 0x3f3f3f3f;...

2019-09-17 14:15:57 195

原创 2018 ICPC 焦作 E [大数+ 数论]

熟悉一下大数的板子import java.util.Scanner;import java.math.*;public class Main { public static int [] prime = new int [5001]; public static int [] isprime = new int [5001]; public static int tot = 0; ...

2019-09-17 14:10:32 276

原创 2017ACM ICPC Asia Regional-Daejeon H-Rock Paper Scissors[ FFT]

题目大意给你两个字符串,N,M |N|>|M|,经过转换之后,问你,连续的一段,能够匹配上的最大元素个数。n <1e5题目分析题目求区间内匹配数最大。考虑区间有n^2个,暴力做显然会T,所以这里考虑,用FFT将第二个串反置,这样我们相邻位置的匹配,可以转化为,对应位置的匹配如下图:此时我们发现,最大匹配数 就是 i+j的系数因此,我们分别求R,S,P的匹配,三次FF...

2019-08-31 10:45:03 369

原创 gym 101667 A -Broadcast Stations【树形dp】

A 树形dp题目大意:一棵5e3的树,可以选择一些点,放上基站,如果u上的基站价值为d,那么距离u小于等于d的点都会被覆盖,问使得整棵树被覆盖需要的最小价值。题目分析设 f[u][i]f[u][i]f[u][i] 表示从 u这个点 ,向外最多能覆盖 到距离为i的点,且他的子树都被覆盖的最小价值。那么我们考虑 f[u][i]f[u][i]f[u][i] 可能是在u这个点建立了一个价值为i的...

2019-08-22 13:13:46 316 2

原创 day 1- 2018-benelux-algorithm-programming-contest-bapc-18

A- A Prize No One Can Win题目大意给一个序列,每个数表示物品的价值,要求选择一些数,使得任意两个物品的价格不能严格大于W分析思考必然是最大的两个相加不大于w 即可。但是这个题的特殊情况就是:考虑所有物品都大于WB-Birthday Boy题目大意给你一些日期,表示同事的生日。要找到一个日期。离上一次同事过生日最久分析思考这是一个需要细心的模拟题。那么计...

2019-07-20 00:32:31 331

原创 P1966 火柴排队【逆序对】

洛谷P1966题目大意给两个序列 ai,bia_i,b_iai​,bi​ ,可以交换相邻两数,要求满足 ∑i=1n(ai−bi)2\sum_{i=1}^{n} (a_i-b_i)^2∑i=1n​(ai​−bi​)2 最小 ,求最少的交换次数题目分析∑i=1n(ai−bi)2\sum_{i=1}^{n} (a_i-b_i)^2∑i=1n​(ai​−bi​)2 最小只需满足,大的和大的配对,...

2019-07-08 11:22:08 145

原创 388C Fox and Card Game【贪心+对称】

题目大意:两个人轮流从若干堆牌中取数,A只能从上往下取,B只能从下往上取。A先取两人都想自己的数之和尽可能大。问两个人的数字大概有多少。分析:因为对称性。两个人如果有一个人想放弃自己这一边的一个数,而去取另一边的数的话,对手一定可以先取走这个数,所以不存在这种情况。每个人都只能取自己这半边的数。对于所有中间的数,应该是从大到小轮流取。代码:#include <bits/s...

2019-06-20 22:28:48 197

原创 【操作系统】作业调度

采用先来先服务(FCFS),最短作业优先(SJF)、响应比高者优先(HRRN)的调度算法#include <bits/stdc++.h>using namespace std;const int maxn = 1e5+50;struct JCB{ string name; int subtime; int runtime; int resour...

2019-05-08 09:24:44 1537

原创 【操作系统】进程调度

两种调度方式优先权法 时间片轮转法#include <bits/stdc++.h>using namespace std;int n;struct node{ int cpu; int priority; int idx=0; bool operator<(const node &oth)const { ...

2019-05-07 13:49:45 182

原创 【tcp/ip】带注册登录-基于udp的群聊系统

基于udp的群聊系统

2019-05-06 14:11:09 368

原创 Frequent values UVA - 11235【RMQ 区间最大值】

稍微转化一下,将若干个相同的数合并成一个区间,权值为数的个数,构成一个新的数据将这些数据求区间最值就可以了。#include <bits/stdc++.h>#define cl(a) memset(a,0,sizeof(a))#define sc(x) scanf("%d",&x)using namespace std;const int maxn = 2e5+50...

2019-04-25 10:33:57 225

原创 乒乓比赛【树状数组】

树状数组水题#include <bits/stdc++.h>#define sc(x) scanf("%d",&x)using namespace std;const int maxn = 20006;const int maxm = 1e5+50;typedef long long ll;int n;int a[maxn];int bit[maxm];in...

2019-04-23 20:50:02 365

原创 合作网络 La3027 【并查集】

并查集 路径查询`#include <bits/stdc++.h>using namespace std;const int maxn =1e5+50;const int mod = 1e9+7;int fa[maxn];int edge[maxn];int n;void init(){ for(int i=0;i<maxn;i++) fa[i]=i; me...

2019-04-23 20:27:49 124

原创 易爆物 LA 3644【并查集】

水题并查集维护是否有环。如果有两个节点在同一个集合里面。再添加这两个节点会形成环#include <bits/stdc++.h>using namespace std;const int maxn =1e5+50;typedef long long ll;int fa[maxn];void init(){ for(int i=0;i<maxn;i++) fa[i...

2019-04-23 20:26:47 105

原创 Gym - 101908C[树状数组+离散化]

降维,横纵分开考虑。多一个交点就多一块计算有多少交点。树状数组维护一下逆序对就可以了#include <bits/stdc++.h>#define cl(a) memset(a,0,sizeof(a))#define sc(x) scanf("%d",&x)using namespace std;typedef long long ll;typedef pair&...

2019-04-21 22:32:58 200

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除