自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DeathYmz的博客

菜鸟的奋斗

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

原创 Apple HDU6206

2018TYUT暑期ACM模拟赛(8) Apple HDU6206 题意:给出四个点,问第四个点在不在前三个点构成的圆内。 思路:一开始队里的说这个简单,妈耶,后来大家发现这个小技巧是不行的,还是要高精度,作为模拟赛的所以默默去找了一个高精度大数模板。有点小不理解自己套上圆心半径计算公式的模板不对,然后看了别的大佬的题解,为啥是求半径的公式是两点相加的平法?????有点小蒙。#incl...

2018-07-28 08:07:35 291

原创 A Cubic number and A Cubic Number HDU - 6216

2018TYUT暑期ACM模拟赛(8) A Cubic number and A Cubic Number HDU - 6216 题意:判断素数p是否为两个立方数的差值。立方数:1 8 27 64 125….. 思路:立方数之差 x^3-y^3=(x-y)(x^2+y^2+xy) 由于p是素数,只能表示1*p 所以 x-y=1。 把x=y+1带入第二个因子。3(y^2+y)+1=p。...

2018-07-28 07:57:44 228

原创 The Dominator of Strings HDU - 6208

2018TYUT暑期ACM模拟赛(8) The Dominator of Strings HDU - 6208 题意:给你n个字符串找到一个字符串,可以包含给的所有串,如果存在就输出该字符串,不存在就输出No。 思路:意外暴力过,我的做法直接按照字符串的长度从大到小的排序。只需要找最长的是否包含全部串即可,这里用了string自带的函数find()。find()函数用法: 返回str在...

2018-07-28 07:41:04 249

原创 Chinese Zodiac HDU - 6213

2018TYUT暑期ACM模拟赛(8) Chinese Zodiac HDU - 6213 题意:给出两个代表生肖的,前者大于后者,两者相差多大,比如样例中的rooster-ox的值为2。就是减减加加的取模的。就是注意一下相等相差12.。#include<iostream>#include<cstring>#include<string>#incl...

2018-07-25 17:51:05 248

原创 Balanced Game HDU - 5882

2018TYUT暑期ACM模拟赛(7) Balanced Game HDU - 5882 #include<iostream>#include<cstdio>using namespace std;int main(){ int t,n; scanf("%d",&t); while(t--) { scan...

2018-07-24 19:10:37 219

原创 B - Cure HDU - 5879

2018TYUT暑期ACM模拟赛(7) B - Cure HDU - 5879 题意:很简单求1-n的(1/k/k)的和。 思路:注意点:1)n的值很大 2)打表不能直接i*i要先出 3)当n在一定大时候收敛到一个值#include<iostream>#include<cstdio>#include<cstring>using namespace...

2018-07-24 15:18:23 326

原创 K叉哈夫曼树

**合并排序,代价 K叉哈夫曼树返回代价值**typedef long long ll;const int maxn=100000+10;ll a[maxn];ll b[maxn];ll N,M;ll Hafuman(int k) //返回总代价{ int ai,bi,blen; blen=0;//b数组的长度 ai=bi=0; ll cost=...

2018-07-24 15:13:06 551

原创 Sort HDU - 5884

2018TYUT暑期ACM模拟赛(7) Sort HDU - 5884 题意:让你合并n个有序序列,合并k个有序序列的花费为k个序列的长度之和,问合并n个序列在不大于T的花费情况下。每次选择k个序列进行合并的k最小为多少。 思路:非常像哈夫曼树,然后就想着k叉哈夫曼树。找了一个k叉哈夫曼树的模板返回的是构造这个树的代价。然后二分找k的值。如果代价ans大于T,说明这个二分的k值小了,反之大...

2018-07-24 15:11:10 254

原创 三点求圆心以及半径

三点求圆心以及半径模板double X,Y,R;struct Point{ double x,y;}pp[maxn];double dis(Point x,Point y){ return sqrt((x.x-y.x)*(x.x-y.x)+(x.y-y.y)*(x.y-y.y));}void solve(Point a,Point b,Point c)//三点共圆...

2018-07-23 21:11:24 4394

原创 Geometry Problem HDU - 6242

2018TYUT暑期ACM模拟赛(6) Geometry Problem HDU - 6242 题意:给你n个点,然后求圆心和半径,要求这个圆必须过n/2的点。 思路:首先要知道怎么三点确定一个圆。然后用随机数,得三个点,这三个点确定的圆能过多少点。要注意的是,因为求圆心一起半径要用到sqrt函数所以精度这里要注意。还有rand的函数rand()%n的意思是取(0-n-1)#inclu...

2018-07-23 21:06:57 246

原创 K-th Number HDU - 6231

2018TYUT暑期ACM模拟赛(6) K-th Number HDU - 6231 题意:给n个数求区间大于k的第k大的数组成的数列第m大的数为多少。 思路:模拟的时候大家说要用尺取法先找出第k大然后维护。就是挺麻烦的emm。然后一筹莫展,最后向题解势力屈服。然后看到很多方法,还是 尺取法+二分最好最短,但是这个要理解半天。还是太菜了。首先明白judge函数返回的是区间第k大的数大于等于...

2018-07-23 18:30:02 261

原创 Permutation HDU - 6235

2018TYUT暑期ACM模拟赛(6) Permutation HDU - 6235 题意&思路:给你n表示n个数,给出一个派来,排列的要求是pi%(pi-pi(i-2))==0。很巧妙,只要pi-pi-2=1 也就是pi%1==0。只要隔二加一即可。#include<iostream>#include<cstdio>using namespace s...

2018-07-23 15:39:01 396

原创 A Simple Stone Game HDU - 6237

2018TYUT暑期ACM模拟赛(6) A Simple Stone Game HDU - 6237 题意:给n堆石头,每次可以从一堆石头移动一个石头到另一堆。问最少移动多少次可以在找到一个因子是所有石头的因子。 思路:可以被所有堆石头正处,一定是可以被石头和给整除,寻找比和小的质因子。过一遍寻找。保存余数,将小堆石头加到大堆里面。#include<iostream>#...

2018-07-23 15:10:56 242

原创 Friends and Enemies HDU - 5874

2018TYUT暑期ACM模拟赛(5) Friends and Enemies HDU - 5874 题意:有个王国,两个矮人之间不是敌人就是朋友,敌人带的项链之间是没有一个颜色相同的,朋友之家会有一个颜色相同。给出M个人N种颜色问颜色够不够。 思路:我们假设x个人互相敌对,然后有y个人与这x个人都是朋友,而这y个人互相敌对。 则有 x+y=m x*y<=n 当x 和 y相等时,x...

2018-07-22 20:44:37 237

原创 Football Games HDU - 5873

2018TYUT暑期ACM模拟赛(5) Football Games HDU - 5873 题意:足球比赛,分为n组,每组给出每个队的积分,每队之间都会有一场比赛。问所给积分是对是错。 思路:两个约束条件,首先最大的得分不会超过2*(n-1),总和不会超过n*(n-1)。个人认为这两个是不对的(例如样例:0 0 6 6)但是,过了emmmmmmmmmm#include<iostre...

2018-07-22 20:36:45 251

原创 Sparse Graph HDU - 5876

2018TYUT暑期ACM模拟赛(5) Sparse Graph HDU - 5876 题意:给图G的点数和边集,求图G的补集的一点到其余个点的距离。 思路:因为边的代价都是1所以只要bfs过一遍标记一下就好,只不过边数目太多所以要考虑这个。用set得到所给图的补集的边。边的存储最好还是用邻接表的方式。#include<iostream>#include<cstdio...

2018-07-22 20:22:17 269

原创 Rabbits HDU - 6227

2018TYUT暑期ACM模拟赛(4) Rabbits HDU - 6227 思路:这道题我绕在圈圈里想了很久!!!!题意就是给一堆兔子的位置,外面的兔子(位置排序上的在最左边和最右边的才是外面的兔子)可以跳到里面两只兔子之间。问最多移动多少步。 其实只要把最左边的以一个间隔和最右边的间隔减去小的部分。剩下的减去这间隔之间的兔子数量就是可以移动的步数#include<iostrea...

2018-07-20 19:18:22 278

原创 Little Boxes HDU - 6225

2018TYUT暑期ACM模拟赛(4) Little Boxes HDU - 6225 题意:就是四个很大的数相加,long long 有一种会爆。图个省事。直接用来大数的模板。直接过了-_-#include<iostream>#include<cstring>using namespace std;string sum(string s1,string s2...

2018-07-20 19:09:07 312

原创 Heron and His Triangle HDU - 6222

2018TYUT暑期ACM模拟赛(4) Heron and His Triangle HDU - 6222 思路:找到规律,高斯消元,得到递推式f(n)=4*f(n-1)-f(n-2)。因为会很大很大,所以用到了大数。里面的递推计算都是大数里面的。高斯消元和大数模板在本博客的模板里面都有。 ps:懒惰了几天在这里玩,想想自己还是只是每次也就过了水题,哎—_—.#include<i...

2018-07-20 19:05:31 319

原创 大数模板以及一些基本运算

大数模板以及一些基本运算 可以直接用 * -_- *string Except(string s,int x) //大数除以整形数{ int cmp=0,ok=0; string ans=""; for(int i=0;i<s.size();i++) { cmp=(cmp*10+s[i]-'0'); if(cmp&g...

2018-07-17 17:58:07 291

原创 Tarjan算法模板

一、Tarjan有向图的强连通//Tarjanconst int MAXN=200100;const int MAXM=500100;struct Edge{ int to,next;}edge[MAXM];int head[MAXN],tot;int Low[MAXN],DFN[MAXN],Stack[MAXN],Belong[MAXN];//belong数组的值是1-s...

2018-07-17 17:52:23 260

原创 mustedge mustedge mustedge HDU - 6200

2018TYUT暑期ACM模拟赛(3) mustedge mustedge mustedge HDU - 6200 这道题是完全看题解写的然后权当学习新算法和思想。 题意:有n组测试数据,n个点m条边。输入u,v表示u到v有变。接下来q个操作: 1 :u,v表示加上u,v的边 2:u,v查询u到v的”mustedge“有多少条。 思路: 1、Tarjan算法无向图缩点 2、用dfs...

2018-07-17 17:41:31 266

原创 Destroy Walls HDU - 6187

2018TYUT暑期ACM模拟赛(1) Destroy Walls HDU - 6187 题意:n,m代表n个地点,m堵墙。要把墙拆了,使点点之间可以互相到达。 思路:没给的墙,就代表是互通的。因为这个情况,所以如果找最小生成树,将边权从小到大排序,然后去除,答案不一定是最优解。只要判断这个图里面没有环就可。所以构造最大生成树,用边权和值-最大生成树的值,以及m-构造的树的边。为所得答案。...

2018-07-17 09:55:22 285

原创 card card card HDU - 6205

2018TYUT暑期ACM模拟赛(3) card card card HDU - 6205 题意:n对牌。上行为奖励,下行为罚值。一对排有固定差值,规则是,从头开始加差值,只要小于0 就不能在往后,想要可以移动最大的距离。需要移动几张牌往后。 思路:由于上行和值-下行的和值为0,会有一一种情况可以使得正好可以全部走完全部的排。感觉有点玄学不好说。自己理解把。#include<...

2018-07-17 09:36:05 239

原创 SPFA模板

SPFA模板const int MAXN=100+10;//点数const int MAXM=10000+10;//邻接表边数int first[MAXN];//初始化为-1bool vis[MAXN];int cnt[MAXN]; //入队次数int que[MAXN];int dist[MAXN];struct Edge{ int to,v,next;}edge1...

2018-07-17 09:06:26 353

原创 ransaction transaction transaction HDU - 6201

2018TYUT暑期ACM模拟赛(3) ransaction transaction transaction HDU - 6201 题意:商人可以选择在一个城市买书,可以选一个城市卖书。卖书-买书-两地的路费。为所获得的利润。求利润的最大值。输入n(代表n个城市)n个数每个地点书的价格。输入n-1行两地的距离。 思路。只要求出,两地的最短路径,过一遍。卖书-买书-两地距离的最短花费。求出...

2018-07-17 09:01:35 244

原创 矩阵快速幂&快速幂

矩阵快速幂&快速幂一、快速幂typedef long long ll;ll quic_power(ll x,ll n,ll mod){ ll result=1; while(n) { if(n&1) { result*=x; result%=mod; ...

2018-07-17 08:43:31 406

原创 number number number HDU - 6198

2018TYUT暑期ACM模拟赛(3) number number number HDU - 6198 题意:给出k,问最先找到的不能由 n= fa1+fa2…fak。构成的n是多少。(f(0)=0,f(1)=1,f(2)=1…..f(n)=f(n-1)+f(n-2)) 思路:首先暴力打表找出答案的规律。然后用高斯消元找出递推式的系数,最后用矩阵快速幂求出答案。#include&lt...

2018-07-16 22:16:44 156

原创 最大上升子序列&最大下降子序列

一、基础for(int i=1;i<=n;i++){ for(int j=1;j<i;j++) if(a[j]<a[i]) f[i]=max(f[i],f[j]+1); ans=max(ans,f[i]); }二、复杂度o(nlogn) cin>>n>>k; for(int i=0;i&...

2018-07-16 22:08:37 851

原创 array array array HDU - 6197

2018TYUT暑期ACM模拟赛(3) array array array HDU - 6197 题意:给n,k,代表有n个数,可以最多有k次消除。使得最后的数字是上升的序列或者是下降的序列。 思路:这道题的另一个意思就是求,n个数的最长上升序列和最长下降序列。判断是否有一个可以满足 k >=(n-最长的长度)。 AC代码#include<iostream>#i...

2018-07-16 22:00:24 232

原创 cable cable cable HDU - 6195

2018TYUT暑期ACM模拟赛(3) cable cable cable HDU - 6195 题意:n台电脑,k个信号。要求电脑连上信号,随便抽k个电脑,可以有k个信号。(大致意思,没有读题队友转述的) 思路:这样一想,就直接想到(m-k+1)*k就好了。不知道对不对,然后提交就过了-_-#include<iostream>#include<cstdio&gt...

2018-07-16 21:48:33 236

原创 最小二乘法拟合多项式

最小二乘法拟合多项式 求解 给定数据点(xi ,yi),用最小二乘法拟合数据的多项式,并求平方误差。#include<iostream>#include<cstdio>#include<cmath>#include<cstring>using namespace std;const int maxn=1000;int n,m;...

2018-07-16 21:20:07 3336

原创 雅可比迭代法——高赛迭代法

求解线性方程组的解 (1)雅可比迭代法#include<iostream>#include<cstdio>#include<cmath>using namespace std;const int maxn=1000;const double e=0.5*1e-5;int n;double a[maxn][maxn];double x[ma...

2018-07-16 21:18:25 1101

原创 高斯消元——矩阵分解

高斯消元中的矩阵分解,好用在,可以对系数相同,不同不用重复计算。 矩阵(LU)分解#include<iostream>#include<cstdio>using namespace std;const int maxn=1000;int n;double a[maxn][maxn];double x[maxn];//分解系数矩阵A=L*U;void s...

2018-07-16 21:16:18 1044

原创 高斯消元(列主元素,完全主元素,若尔当)

高斯消元法,对于ACM题目中需要用矩阵快速幂的方面很好用。可以通过打表找到的值,推出系数!!好用。一、列主元素消元法//列主元素消元法#include<iostream>#include<algorithm>#include<cstdio>#include<cmath>using namespace std;const int...

2018-07-16 21:14:24 1544

原创 Law of Commutation HDU - 6189

2018TYUT暑期ACM模拟赛(1) Law of Commutation HDU - 6189 题意:给你n,a。m=2^n,b=[1,m], 求有多少满足a^b=b^a%m; 思路:模拟赛的当场只是听队友说了这题没有写。赛后再写。数学方面的问题啊。首先打表看了一下规律,n<=1 无论a是啥答案都是1,a为奇数的时候答案都为1 。这个肯定是能推导出来的但是我没有推。然后看打表...

2018-07-15 10:30:28 232

原创 Covering HDU - 6185

2018TYUT暑期ACM模拟赛(1) Covering HDU - 6185 题意:用1*2的地毯铺满4*n的地方。 思路:找递推式,然后emmmm,看了大佬的题解。找递推式+矩阵快速幂,顺便学到矩阵快速幂,正好上学期上了数值计算,矩阵上的操作挺上手。这个参考的大佬的博客的思路是分类五类情况。然后一点点铺满。详细推导内容请点下方链接内容。个人感觉很符合我的脑回路,不知道下次写类似的能不...

2018-07-14 22:07:11 356

原创 Duizi and Shunzi HDU - 6188

2018TYUT暑期ACM模拟赛(1) Duizi and Shunzi HDU - 6188 题意:能出的最多的对子或者顺子形式的和。 思路:贪心法,一开始自己的思路是错误的。错误想法:先找出对子为先,后再在考虑,能否把某个对子拆成两个顺子。这样就有一个样例是过不去的如:1 2 3 3 4 5 5 6 7。用我的想法答案是2.而实际上是可以3的。123 345 567 我想法的漏洞在,...

2018-07-14 21:57:30 229

原创 CS Course HDU - 6186

2018TYUT暑期ACM模拟赛(1) CS Course HDU - 6186 题意: 输入n,q。(n表示有多少位数,q代表多少次查询)。求n位数,不包含查询中输入的第i位的与,或,异或。 思路:模拟写的时候没有写,就想了一下思路,关于与和或的。和这下面代码不一样的思路:把每一位数的二进制表示时的每一位是0或1,记录下来。最后看有多少0,1.对于与只要有0就为0,对于或只要有1就为...

2018-07-14 21:30:30 264

原创 A Math Problem

2018TYUT暑期ACM模拟赛(1) A Math Problem 题意:给你一个数字n(1-1e18),找一个最大的数字k满足k^k<=n。输出k 首先可以自己算一下16^16已经超过1e18了。所以k最大最大也就是15 所以可以打表预处理一下+快速幂#include<iostream>#include<cstdio>#include<cm...

2018-07-14 21:20:11 348

空空如也

空空如也

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

TA关注的人

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