自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (1)
  • 收藏
  • 关注

原创 博客迁移声明

csdn越来越烂,数不清的广告,无法遏制的抄袭,对搜索引擎的极大污染无法继续忍受,所以现在开始anti-csdn本人博客将迁移至博客园以后将只会在博客园分享更多知识,祝csdn早日凉凉

2022-01-10 15:17:33 215

原创 java_acm 洛谷 - P3372 【模板】线段树 1

P3372 【模板】线段树 1模板很简单,cpp转java很头疼import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.io.StreamTokenizer;import java.math.BigInteger;impo

2021-10-14 17:22:40 182

原创 Java在acm中的快速读入,多组读入,快速输出模板

代码多组读入a+b problem问题import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.io.PrintWriter;import java.io.StreamTokenizer;import java.util.Scanner;public class Main {

2021-10-12 22:03:17 673

原创 洛谷 - P2580 于是他错误的点名开始了(trie)

P2580 于是他错误的点名开始了大致思路注意数据范围,这很重要!!trie树模板题了,最后拿set记录一下哪些被点过了哪些没别点过,拿个数组存可能效率更高,偷懒了代码#include<iostream>#include<algorithm>#include<cstring>#include<vector>#include<cstdio>#include<cmath>#include<queue>

2021-10-11 16:49:24 103

原创 洛谷 - P3916 图的遍历(dfs+反向建图)

link思路一开始用邻接表+bfs做,t得很惨,只能拿60分原因是很多点其实被走过了,但是又不得不再走一次,因为前一次经过的时候,只得到了它某个前驱节点能走到的最大编号点,它能走到的最大点还是没得到改了改思路,反向建图+dfs。从最大的点开始搜,经过一个点,便给这个点标记上最大点,因为遍历顺序是从最大的开始,所以被标记后就不会再次被更新,这样思路可以ac代码#include<iostream>#include<algorithm>#include<cstri

2021-10-11 16:24:23 178

原创 LibreOJ - 2066 「HAOI2016」食物链 (拓扑排序)

题目link题目描述见链接输入格式第一行两个整数 和 ,接下来 行每行两个整数 描述 条能量流动关系。(保证输入数据符合生物学特点,且不会有重复的能量流动关系出现)输出格式一个整数,即食物网中的食物链条数。样例输入10 161 21 41 102 32 54 34 54 86 57 67 98 59 810 610 710 9输出9思路拓扑排序,但是要计算路径的条数生产者入度in必定为0,食物链的末端出度out必定为0起点必有一条路

2021-10-10 22:27:53 156

原创 洛谷Luogu - P3373 线段树 2(区间乘)

Link关于先乘后加,还是先加后乘的一点个人理解,举个栗子,为了方便理解,我们举单点而不是区间为例,两者是等价的:对于一个节点:struct Node{ int l,r; int sum; int add,mul;}里面存储的信息有add和mul,比如我们现在要计算出节点a的真实值并清空a的懒标记,有两种计算方式a×mul+adda \times mul +adda×mul+add,向下传时:(a×mul+add)×mul′+add′(a \times mul +add)\time

2021-09-16 15:48:49 82

原创 洛谷 - P1517 高精求小数幂(Python高精)

Link几个函数介绍Docs of Python 3.9getcontext()官方叫做上下文,其实可以看做decimal包在当前文件的一个全局设置,例如:from decimal import Decimal, getcontext, MAX_PREC# getcontext().prec = MAX_PRECprint(getcontext())'''输出:Context(prec=28, rounding=ROUND_HALF_EVEN, Emin=-999999, Emax

2021-09-14 22:12:20 467

原创 洛谷Luogu - P1591 阶乘数码(python高精度)

Linkpython做高精度简直不要太爽代码t=input()a=[1,1]for i in range(2,1001): a.append(a[i-1]*i)for i in range(int(t)): b=input().split() n=int(b[0]) aa=int(b[1]) cnt=0 for j in str(a[n]): if(j==str(aa)): cnt+=1 print(cnt)

2021-09-14 10:53:42 189

原创 LOJ - 132 线段树,区间修改,区间查询

题目链接大致讲解如果采用单点修改的方式,对需要修改区间的每一个叶子节点都进行修改,并且pushup(),时间复杂度会达到O(n)O(n)O(n)所以只需要对某个区间添加一个add成员(也就是懒标记),代表此节点所有的子节点都会进行修改*(此节点可修改,也可不修改,只要前后对应即可)*,具体操作为:// 对于一个节点root,和它的左孩子left、右孩子rightleft.add += root.add;left.sum += left.sum + (left.r - left.l + 1) *

2021-09-12 22:14:26 130

原创 HDU - 1251 统计难题(trie模板记录)

题目链接#include<iostream>#include<algorithm>#include<cstring>#include<vector>#include<cstdio>#include<cmath>#include<queue>#include<map>#include<string>#include<set>using namespace std;

2021-09-06 18:22:55 95

原创 图论 - 最短路,dijkstra朴素版及优化版, bellman_ford, spfa, floyd模板

单源最短路所有边权都是正数朴素版Dijkstra算法O(n2)O(n^2)O(n2) 适合边比较多的时候,即稠密图堆优化版的Dijkstra算法时候边少的是时候,即稀疏图使用O(mlogn)O(mlogn)O(mlogn) 适合边少的稀疏图存在负边权Bellman-FordO(nm)O(nm)O(nm)spfa,其实是Bellman-Ford的一个优化版一般是O(m)O(m)O(m),最坏情况下是O(nm)O(nm)O(nm)多源最短路FloydO(n3)O(n^3)O(n3)

2021-09-05 11:50:27 87

原创 POJ - 2411 Mondriaan‘s Dream 蒙德里安的梦想 (状压dp入门经典)

题目链接状压dp的含义大致可以这么理解:我们表示的状态是一个十进制数,但是我们要把它看作一个二进制数,所以要先掌握位运算知识大致思路:总的方案数等于,只放横着的小方块的合法方案数,因为如果合法,剩下的格子必定能放满竖着的小方块f[i][j]表示的是前i-1列已经摆好了,且从i-1列伸出小方块到i列的方案总数重点是代码,其实思路并不难理解,但是由于涉及到位运算,在下由于是因为状压dp才大量接触到位运算,所以直接看代码不能很能理解。注释写得比较详细,建议多看代码和注释此博文建议是明白了这道题的

2021-08-10 19:37:33 220 1

原创 POJ - 2342 Anniversary party 没有上司的舞会 (树形dp经典题)

题目链接点进去题目链接左下角Descriptions有翻译There is going to be a party to celebrate the 80-th Anniversary of the Ural State University. The University has a hierarchical structure of employees. It means that the supervisor relation forms a tree rooted at the rector V

2021-08-10 11:30:22 93

原创 HDU - 1233 还是畅通工程(最小生成树kruskal、prim模板)

题目链接Problem Description某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。Input测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( < 100 );随后的N(N-1)/2行对应村庄间的距离,每行给出一对正整数,分别是两个村庄的编号,以及此两村庄间的距离。为简单起见,村庄

2021-07-31 11:25:17 118

原创 POJ - 1985 Cow Marathon (求树的直径,树上dp模板)

题目链接题目描述给定一个无向图,这个无向图满足其为一棵树,求树的直径的最大值输入格式第一行:两个数,n和m。n表示节点个数,m表示边的个数。接下来有m行,表示m条边:每行的前两个数是这条边连接的两个节点,第三个数是这条边的长度。后面有一个字母,不用管它。输出格式一个整数,树的直径的最大值样例输入7 61 6 13 E6 3 9 E3 5 7 S4 1 3 N2 4 20 W4 7 2 S样例输出52#include<iostream>#include<

2021-07-28 21:34:28 137

原创 CodeForces - 1245D Shichikuji and Power Grid (prim、不建立虚拟结点版)

题目链接:https://codeforces.com/problemset/problem/1245/D大致思路:prim比kruskal快很多,所以用了prim。prim一个样例基本50ms就跑出来了,kruskal要300+ms贪心,肯定是需要一个城市自建发电站的,那么选取一个花费最少的城市修建发电站city结构体记录是键发电站,还是连接城市每次照prim模板更新dist就可以了连线的前驱结点,遍历城市,如果花费和找到点的花费相同,那么就能作为前驱结点开long long,我一开始开的

2021-07-28 15:30:12 182

原创 高精度模板

#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn = 1e4 + 5;inline __int128 _read() { __int128 sum = 0; char ch = getchar(); while (!(ch >= '0' && ch <= '9')) ch = getchar(); while (ch >= '0' &

2021-04-14 21:51:50 84

原创 [蓝桥杯][2014年第五届真题]拼接平方数

文章目录题目参考代码解题思路题目题目链接参考代码#include<iostream>#include<algorithm>#include<string>#include<vector>#include<cstdio>#include<cmath>#include<bits/stdc++.h>using namespace std;typedef long long ll;const int n

2021-04-10 16:25:57 151

原创 牛客 - 回文数(十六进制高精度)

文章目录题目参考代码解题思路注意事项题目题目链接参考代码//#include<bits/stdc++.h>#include<iostream>#include<algorithm>#include<string>#include<vector>#include<cstdio>#include<cmath>#include<sstream>#include<map>using

2021-04-08 18:07:32 354

原创 【计算机操作系统】第一章 操作系统引论

2021-03-31 20:02:27 44

原创 C语言网 - 题目 1650: [蓝桥杯][算法训练VIP]猴子分苹果

【OJ刷题之路】【C语言网】文章目录题目参考代码解题思路方法一方法二注意事项题目题目链接参考代码#include<bits/stdc++.h>using namespace std;#define ll long longll n, m, ans;int main(void) { cin >> n >> m; ans = pow(n, n + 1) - (n - 1) * m; cout << ans;

2021-03-10 19:41:49 300

原创 蓝桥杯零散知识,小技巧

文章目录数学知识填空题技巧日期类本博客不定期更新数学知识对于结果需要取模的题,中间步骤为了防止溢出,使用此表达式ab % c = ((a % c)(b % c)) % c填空题技巧日期类利用vbs计算日期间隔DateDiff 函数定义和用法DateDiff 函数可返回两个日期之间的时间间隔数DateDiff 函数用于计算两日期时间的差值,计算方法是 date2 - date1若比较年份,则不管月份以下的数值,若比较月份,则不管天数以下的数值… 以此类推注释:firstday

2021-03-03 10:53:01 234 1

原创 C语言网 - 题目 1518: [蓝桥杯][算法提高VIP]寻找三位数(巧妙使用next_permutation)

文章目录题目参考代码解题思路注意事项题目题目链接参考代码#include<bits/stdc++.h>using namespace std;int ia[] = {1, 2, 3, 4, 5, 6, 7, 8, 9};int a, b, c;int main(void) { do { a = ia[2] + ia[1] * 10 + ia[0] * 100; b = ia[5] + ia[4] * 10 + ia[3] * 100;

2021-02-24 22:56:48 221

原创 C语言网 - 题目 1490: [蓝桥杯][算法提高VIP]五次方数

文章目录题目参考代码解题思路注意事项题目题目链接参考代码#include<bits/stdc++.h>using namespace std;#define ll long longconst int maxn = 1e4 + 5;std::list<int> l;int f(int x) { int ans = 0; while (x) { ans += pow(x % 10, 5); x /= 10;

2021-02-22 17:36:35 174

原创 C语言网 - 题目 1458: [蓝桥杯][2013年第四届真题]错误票据

文章目录题目参考代码解题思路注意事项题目题目链接参考代码#include<bits/stdc++.h>using namespace std;#define ll long longint n;int mmin = 999999, mmax = 0;int rec[100005];int a, b;int main(void) { cin >> n; int tmp; while (cin >> tmp) {

2021-02-17 01:21:59 322

原创 C语言网 题目 1443: [蓝桥杯][历届试题]数字游戏

文章目录题目参考代码解题思路注意事项题目跳转链接参考代码#include<bits/stdc++.h>using namespace std;#define ll long long// const int maxn = 1e6 + 5;ll n, k, t;ll ans, add = 1, tmp = 1;//ans是最后的答案,add是每次栋栋的加数,tmp是栋栋每次所报的数int main(void) { cin >> n >> k

2021-02-17 00:00:17 421

原创 【计算机图形学】Bezier Curve

文章目录实验思路代码思路问题及解决方案实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路代码思路void binomialCoeffs()函数求二项式系数,传入点的数量n和记录数组;void computerBezPt()函数计算被贝塞尔曲线沿曲线路径的坐标位置;传入比例系数,点坐标,控制点数,控制点

2021-02-13 21:00:37 258

原创 【计算机图形学】Cylinder rendering

文章目录实验思路代码思路问题及解决方法实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路代码思路drawsurface():unitSlice:每次增加的圆周块,unitHeight:每次增加的高度块。总体绘制路线是,在每个圆周块上,绘制完整个高度的块,然后继续绘制下一个圆周块,知道圆周块组成一个圆。所

2021-02-13 20:49:24 232

原创 【计算机图形学】Boundary-Fill Algorithm

文章目录实验思路代码思路问题及解决方案实现代码MyStack.hMyStack.cppmain.cpp本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路代码思路变量介绍:dcpt:点,用坐标表示,x和y成员分别表示x和y坐标;pointStruct:数据成员包含一个点和一个指向点变量的指针,即后面的栈是以链表的形式存储的,也便于实现递归;p

2021-02-09 13:42:31 267

原创 【计算机图形学】Three-DimensionalScene Roaming

文章目录实验思路代码思路问题及解决方法实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动。大部分内容来自本人实验报告,有错误是难以避免的,若有表述错误或bug欢迎指出。实验思路代码思路变量介绍:CVector3D用于表示向量或者三维坐标,默认初始化为(0,0,0);CViewFrame用于建立观察坐标系,其中数

2021-02-09 13:18:04 188

原创 【计算机图形学】Two-Dimensional Viewing and Clippin

文章目录实验思路编程思路问题及解决方案实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路编程思路先设置裁剪窗口各条边的区域码,用十六进制表示,方便进行逻辑运算。encode()函数用来对单个点相对于裁剪窗口的位置进行判断,并返回十六进制数。用accept(),reject(), inside()函数依次表

2021-02-09 13:01:16 185

原创 【计算机图形学】Tow-Dimensional Geometric Transforamation

文章目录实验思路实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路根据教材上的变换矩阵,借助二维数组,依次写出生成旋转、缩放、平移矩阵的函ScalingMatrix(),RotationMatrix(),TranslationMatrix()。每种变换都有一个生成变换矩阵函数和一个变换函数相对应Transl

2021-02-09 12:50:27 129

原创 【计算机图形学】LineStyle and Line Width

文章目录实验思路实现代码核心代码及关键步骤注释全部代码代码缺陷本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路采用Bresenham算法,通过依次绘制像素点的方式画出直线。为精简代码,将deltaX和deltaY分别大于等于0和小于0的情况,使用一个if-else分支便可完成绘制,在进入绘制循环之前先进行判断其与0的大小情况,设定add X和

2021-02-09 00:51:27 260

原创 【计算机图形学】Bresenham’s Line Algorithm

Bresenham’s Line Algorithm实验思路实现代码核心代码及关键步骤注释全部代码本博客基于课程"计算机图形学",教材使用为计算机图形学(第4版) [Computer Graphics with OpenGL, Fourth Edition],部分代码模板便来自于此教材,并且有所改动实验思路此代码通过一些判断将会出现的需要进行判断的八种情况进行合并成两种,大大减少了代码量实现代码核心代码及关键步骤注释void MyLine(int xs, int ys, int xe, int

2021-02-09 00:30:54 176

原创 【C++Primer 学习日志】类

【C++Primer 学习日志】类类成员的新特性this指针的理解定义read和print函数(7.1节,第234页)本系列博客用来记录本小白学习《C++ Primer 5th Edition》一书对于书上较为复杂的知识点,或者初看时不能理解的知识点进行解释和记录。但并不是对书内各个知识点进行详解,不适合用于代替书籍学习。语言尽量精简化。各大佬若发现有错误的地方,欢迎指出,谢谢^^。类成员的新特性在C++11新标准中规定,可以为数据成员提供一个类内初始值(in-class initializer),

2021-02-08 23:43:11 98

空空如也

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

TA关注的人

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